From eab3858e3bd6e5a77c13643cd62177c25c2b1a4a Mon Sep 17 00:00:00 2001 From: mdecimus Date: Tue, 9 Apr 2024 10:54:28 +0200 Subject: [PATCH] Added license --- .gitignore | 8 - CHANGELOG.md | 13 + CONTRIBUTING.md | 35 + Cargo.lock | 2212 +++++++++++++++++++++ Cargo.toml | 8 + LICENSE | 661 ++++++ src/assets/android-chrome-192x192.png | Bin 8300 -> 21505 bytes src/assets/android-chrome-512x512.png | Bin 22740 -> 104372 bytes src/assets/apple-touch-icon.png | Bin 7453 -> 19215 bytes src/assets/favicon-16x16.png | Bin 521 -> 812 bytes src/assets/favicon-32x32.png | Bin 1113 -> 1784 bytes src/assets/favicon.ico | Bin 15406 -> 15406 bytes src/components/badge.rs | 23 + src/components/card.rs | 23 + src/components/form/button.rs | 23 + src/components/form/expression.rs | 23 + src/components/form/input.rs | 23 + src/components/form/mod.rs | 23 + src/components/form/select.rs | 23 + src/components/form/stacked_badge.rs | 23 + src/components/form/stacked_input.rs | 23 + src/components/icon.rs | 23 + src/components/layout/header.rs | 23 + src/components/layout/mod.rs | 23 + src/components/layout/sidebar.rs | 23 + src/components/layout/toggle.rs | 23 + src/components/list/header.rs | 23 + src/components/list/mod.rs | 23 + src/components/list/pagination.rs | 23 + src/components/list/row.rs | 23 + src/components/list/table.rs | 23 + src/components/list/toolbar.rs | 23 + src/components/messages/alert.rs | 23 + src/components/messages/mod.rs | 25 +- src/components/messages/modal.rs | 23 + src/components/mod.rs | 23 + src/components/report.rs | 23 + src/components/skeleton.rs | 23 + src/core/expr/mod.rs | 4 +- src/core/expr/parser.rs | 4 +- src/core/expr/tokenizer.rs | 4 +- src/core/form.rs | 23 + src/core/http.rs | 23 + src/core/mod.rs | 23 + src/core/oauth.rs | 23 + src/core/schema.rs | 23 + src/core/url.rs | 23 + src/main.rs | 23 + src/pages/account/crypto.rs | 23 + src/pages/account/mod.rs | 23 + src/pages/account/password.rs | 23 + src/pages/authorize.rs | 23 + src/pages/config/edit.rs | 23 + src/pages/config/list.rs | 23 + src/pages/config/mod.rs | 23 + src/pages/config/schema/auth.rs | 23 + src/pages/config/schema/authentication.rs | 23 + src/pages/config/schema/directory.rs | 23 + src/pages/config/schema/imap.rs | 23 + src/pages/config/schema/jmap.rs | 23 + src/pages/config/schema/listener.rs | 23 + src/pages/config/schema/mod.rs | 23 + src/pages/config/schema/server.rs | 23 + src/pages/config/schema/sieve.rs | 23 + src/pages/config/schema/smtp.rs | 23 + src/pages/config/schema/spamlists.rs | 23 + src/pages/config/schema/storage.rs | 23 + src/pages/config/schema/store.rs | 23 + src/pages/config/schema/tls.rs | 23 + src/pages/config/schema/tracing.rs | 23 + src/pages/config/search.rs | 23 + src/pages/directory/domains/display.rs | 23 + src/pages/directory/domains/edit.rs | 23 + src/pages/directory/domains/list.rs | 23 + src/pages/directory/domains/mod.rs | 23 + src/pages/directory/mod.rs | 23 + src/pages/directory/principals/edit.rs | 23 + src/pages/directory/principals/list.rs | 23 + src/pages/directory/principals/mod.rs | 23 + src/pages/login.rs | 23 + src/pages/manage/logs.rs | 23 + src/pages/manage/maintenance.rs | 23 + src/pages/manage/mod.rs | 23 + src/pages/mod.rs | 23 + src/pages/notfound.rs | 23 + src/pages/queue/messages/list.rs | 23 + src/pages/queue/messages/manage.rs | 23 + src/pages/queue/messages/mod.rs | 23 + src/pages/queue/mod.rs | 23 + src/pages/queue/reports/arf.rs | 23 + src/pages/queue/reports/display.rs | 23 + src/pages/queue/reports/dmarc.rs | 23 + src/pages/queue/reports/list.rs | 23 + src/pages/queue/reports/mod.rs | 23 + src/pages/queue/reports/tls.rs | 23 + src/pages/reports/display.rs | 23 + src/pages/reports/list.rs | 23 + src/pages/reports/mod.rs | 23 + 98 files changed, 4844 insertions(+), 16 deletions(-) create mode 100644 CHANGELOG.md create mode 100644 CONTRIBUTING.md create mode 100644 Cargo.lock create mode 100644 LICENSE diff --git a/.gitignore b/.gitignore index a86f13b..d58356b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,15 +1,7 @@ /target /dist/ /_ignore - -# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries -# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html -Cargo.lock - -# These are backup files generated by rustfmt **/*.rs.bk - -# Support playwright testing node_modules/ test-results/ end2end/playwright-report/ diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..1f0eab0 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,13 @@ +# Change Log + +All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). + +## [0.1.0] - 2024-04-09 + +First release of the project. + +## Added + +### Changed + +### Fixed diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..ec65941 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,35 @@ +# Contributing + +When contributing to this repository, please first discuss the change you wish to make via issue, +email, or any other method with the owners of this repository before making a change. + +Please note we have a code of conduct, please follow it in all your interactions with the project. + +## Any contributions you make will be under AGPL + +This software is licensed under the Affero General Public License (AGPL). Any contributions made to +this project will be under this license. Before any contributions can be made, contributors are +required to sign a Contributor License Agreement (CLA). The purpose of the agreement is to clarify +and document the rights granted by contributors to us. + +## Pull Request Process + +1. Ensure any install or build dependencies are removed before the end of the layer when doing a + build. +2. Update the README.md with details of changes to the interface, this includes new environment + variables, exposed ports, useful file locations and container parameters. +3. Increase the version numbers in any examples files and the README.md to the new version that this + Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/). +4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you + do not have permission to do that, you may request the second reviewer to merge it for you. + +## Code of Conduct + +We as members, contributors, and leaders pledge to make participation in our community a harassment-free +experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex +characteristics, gender identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, religion, or sexual identity and orientation. +We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, +and healthy community. + +You can read the full Code of Conduct [here](https://github.com/stalwartlabs/.github/blob/main/CODE_OF_CONDUCT.md). diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..9448f06 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,2212 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "getrandom", + "once_cell", + "serde", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anyhow" +version = "1.0.81" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0952808a6c2afd1aa8947271f3a60f1a6763c7b912d210184c5149b5cf147247" + +[[package]] +name = "async-recursion" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30c5ef0ede93efbf733c1a727f3b6b5a1060bbedd5600183e66f6e4be4af0ec5" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "async-trait" +version = "0.1.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a507401cad91ec6a857ed5513a2073c82a9b9048762b885bb98655b306964681" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "attribute-derive" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b48808b337d6b74c15ff9becfc0e139fe2b4e2b224d670a0ecdb46b0b2d3d9b" +dependencies = [ + "attribute-derive-macro", + "derive-where", + "manyhow", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "attribute-derive-macro" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b19cbd63850ecff821c413e12846a67ec9f4ce7309c70959b94ecf9b2575ee2" +dependencies = [ + "collection_literals", + "interpolator", + "manyhow", + "proc-macro-utils", + "proc-macro2", + "quote", + "quote-use", + "syn", +] + +[[package]] +name = "autocfg" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" + +[[package]] +name = "base64" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array", +] + +[[package]] +name = "blowfish" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32fa6a061124e37baba002e496d203e23ba3d7b73750be82dbfbc92913048a5b" +dependencies = [ + "byteorder", + "cipher", + "opaque-debug", +] + +[[package]] +name = "bumpalo" +version = "3.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" + +[[package]] +name = "camino" +version = "1.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" + +[[package]] +name = "cc" +version = "1.0.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2678b2e3449475e95b0aa6f9b506a28e61b3dc8996592b983695e8ebb58a8b41" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "chrono" +version = "0.4.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a0d04d43504c61aa6c7531f1871dd0d418d91130162063b789da00fd7057a5e" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "serde", + "wasm-bindgen", + "windows-targets 0.52.4", +] + +[[package]] +name = "chrono-humanize" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "799627e6b4d27827a814e837b9d8a504832086081806d45b1afa34dc982b023b" +dependencies = [ + "chrono", +] + +[[package]] +name = "ciborium" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +dependencies = [ + "ciborium-io", + "ciborium-ll", + "serde", +] + +[[package]] +name = "ciborium-io" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" + +[[package]] +name = "ciborium-ll" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" +dependencies = [ + "ciborium-io", + "half", +] + +[[package]] +name = "cipher" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" +dependencies = [ + "generic-array", +] + +[[package]] +name = "collection_literals" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "186dce98367766de751c42c4f03970fc60fc012296e706ccbb9d5df9b6c1e271" + +[[package]] +name = "config" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7328b20597b53c2454f0b1919720c25c7339051c02b72b7e05409e00b14132be" +dependencies = [ + "convert_case", + "lazy_static", + "nom", + "pathdiff", + "serde", + "toml", +] + +[[package]] +name = "console_error_panic_hook" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" +dependencies = [ + "cfg-if", + "wasm-bindgen", +] + +[[package]] +name = "console_log" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be8aed40e4edbf4d3b4431ab260b63fdc40f5780a4766824329ea0f1eefe3c0f" +dependencies = [ + "log", + "web-sys", +] + +[[package]] +name = "const_format" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "cookie" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" +dependencies = [ + "percent-encoding", + "time", + "version_check", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" + +[[package]] +name = "cpufeatures" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +dependencies = [ + "libc", +] + +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + +[[package]] +name = "crypto-mac" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bff07008ec701e8028e2ceb8f83f0e4274ee62bd2dbdc4fefff2e9a91824081a" +dependencies = [ + "generic-array", + "subtle", +] + +[[package]] +name = "darling" +version = "0.20.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.20.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn", +] + +[[package]] +name = "darling_macro" +version = "0.20.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" +dependencies = [ + "darling_core", + "quote", + "syn", +] + +[[package]] +name = "dashmap" +version = "5.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +dependencies = [ + "cfg-if", + "hashbrown", + "lock_api", + "once_cell", + "parking_lot_core", +] + +[[package]] +name = "default-struct-builder" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8fa90da96b8fd491f5754d1f7a731f73921e3b7aa0ce333c821a0e43666ac14" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", +] + +[[package]] +name = "derive-where" +version = "1.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + +[[package]] +name = "drain_filter_polyfill" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "669a445ee724c5c69b1b06fe0b63e70a1c84bc9bb7d9696cd4f4e3ec45050408" + +[[package]] +name = "either" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11157ac094ffbdde99aa67b23417ebdd801842852b500e395a45a9c0aac03e4a" + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futures" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-executor" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" + +[[package]] +name = "futures-macro" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "futures-sink" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-util" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "gloo-net" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43aaa242d1239a8822c15c645f02166398da4f8b5c4bae795c1f5b44e9eee173" +dependencies = [ + "futures-channel", + "futures-core", + "futures-sink", + "gloo-utils", + "http 0.2.12", + "js-sys", + "pin-project", + "serde", + "serde_json", + "thiserror", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "gloo-storage" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbc8031e8c92758af912f9bc08fbbadd3c6f3cfcbf6b64cdf3d6a81f0139277a" +dependencies = [ + "gloo-utils", + "js-sys", + "serde", + "serde_json", + "thiserror", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "gloo-timers" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb143cf96099802033e0d4f4963b19fd2e0b728bcf076cd9cf7f6634f092994" +dependencies = [ + "futures-channel", + "futures-core", + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "gloo-utils" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b5555354113b18c547c1d3a98fbf7fb32a9ff4f6fa112ce823a21641a0ba3aa" +dependencies = [ + "js-sys", + "serde", + "serde_json", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "half" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" +dependencies = [ + "cfg-if", + "crunchy", +] + +[[package]] +name = "hashbrown" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" + +[[package]] +name = "hmac" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1441c6b1e930e2817404b5046f1f989899143a12bf92de603b69f4e0aee1e15" +dependencies = [ + "crypto-mac", + "digest", +] + +[[package]] +name = "html-escape" +version = "0.2.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d1ad449764d627e22bfd7cd5e8868264fc9236e07c752972b4080cd351cb476" +dependencies = [ + "utf8-width", +] + +[[package]] +name = "http" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "humansize" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cb51c9a029ddc91b07a787f1d86b53ccfa49b0e86688c946ebe8d3555685dd7" +dependencies = [ + "libm", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "indexmap" +version = "2.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "interpolator" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71dd52191aae121e8611f1e8dc3e324dd0dd1dee1e6dd91d10ee07a3cfb4d9d8" + +[[package]] +name = "inventory" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f958d3d68f4167080a18141e10381e7634563984a537f2a49a30fd8e53ac5767" + +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" + +[[package]] +name = "js-sys" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "leptos" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2cd996d00a55895327b2eb5d2d7d440ab756b4a9fe43ec78411c74199306808c" +dependencies = [ + "cfg-if", + "leptos_config", + "leptos_dom", + "leptos_macro", + "leptos_reactive", + "leptos_server", + "server_fn", + "tracing", + "typed-builder", + "typed-builder-macro", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "leptos-use" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15ed5b0068731f9506d0f4cc9fd280ea424cb1f3e56d8d4c66efc1b8abae25e8" +dependencies = [ + "async-trait", + "cfg-if", + "cookie", + "default-struct-builder", + "futures-util", + "gloo-timers", + "gloo-utils", + "js-sys", + "lazy_static", + "leptos", + "paste", + "thiserror", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "leptos_config" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc190458a62433fb1d31f65f1afe7f1044650c667cdf9166956b48907ac821bd" +dependencies = [ + "config", + "regex", + "serde", + "thiserror", + "typed-builder", +] + +[[package]] +name = "leptos_dom" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ffd84c459d7c517fb8c9bfff704e819f3e6a2f5baf574d8636cb23840323d0a" +dependencies = [ + "async-recursion", + "cfg-if", + "drain_filter_polyfill", + "futures", + "getrandom", + "html-escape", + "indexmap", + "itertools", + "js-sys", + "leptos_reactive", + "once_cell", + "pad-adapter", + "paste", + "rustc-hash", + "serde", + "serde_json", + "server_fn", + "smallvec", + "tracing", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "leptos_hot_reload" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da2f157fc6d4a356e3dd2734c6a65cba9e5eadb7c7cfd979c0adb752d293dba1" +dependencies = [ + "anyhow", + "camino", + "indexmap", + "parking_lot", + "proc-macro2", + "quote", + "rstml", + "serde", + "syn", + "walkdir", +] + +[[package]] +name = "leptos_macro" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69a20596eb0afe56296d3187c8f46680bb8ea1df58b6566e2588c9c53c549581" +dependencies = [ + "attribute-derive", + "cfg-if", + "convert_case", + "html-escape", + "itertools", + "leptos_hot_reload", + "prettyplease", + "proc-macro-error", + "proc-macro2", + "quote", + "rstml", + "server_fn_macro", + "syn", + "tracing", + "uuid", +] + +[[package]] +name = "leptos_meta" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a85d2f3e3c4eb7ffb8a97abe6c79eefcb0a2c6ae5bacd7645b5a5df1ba0a212" +dependencies = [ + "cfg-if", + "indexmap", + "leptos", + "tracing", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "leptos_reactive" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b9152b4b9af932896ae69d08b8ab7108513b9cdddf8e2922d5c234dab7ac9af" +dependencies = [ + "base64", + "cfg-if", + "futures", + "indexmap", + "js-sys", + "paste", + "pin-project", + "rustc-hash", + "self_cell", + "serde", + "serde-wasm-bindgen", + "serde_json", + "slotmap", + "thiserror", + "tracing", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "leptos_router" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e42ebcdc1663ab03f249b91c367daa00f164d84c5f30eaec492bd45dffd3148" +dependencies = [ + "cfg-if", + "gloo-net", + "itertools", + "js-sys", + "lazy_static", + "leptos", + "linear-map", + "once_cell", + "percent-encoding", + "send_wrapper", + "serde", + "serde_json", + "serde_qs", + "thiserror", + "tracing", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "leptos_server" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bed1e82ded6bfbfd61ad2f77066a789b94dc889513a47223e3c6a3e8ca2b109f" +dependencies = [ + "inventory", + "lazy_static", + "leptos_macro", + "leptos_reactive", + "serde", + "server_fn", + "thiserror", + "tracing", +] + +[[package]] +name = "libc" +version = "0.2.153" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" + +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "linear-map" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee" +dependencies = [ + "serde", + "serde_test", +] + +[[package]] +name = "lock_api" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" + +[[package]] +name = "manyhow" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f91ea592d76c0b6471965708ccff7e6a5d277f676b90ab31f4d3f3fc77fade64" +dependencies = [ + "manyhow-macros", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "manyhow-macros" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c64621e2c08f2576e4194ea8be11daf24ac01249a4f53cd8befcbb7077120ead" +dependencies = [ + "proc-macro-utils", + "proc-macro2", + "quote", +] + +[[package]] +name = "md-5" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5a279bb9607f9f53c22d496eade00d138d1bdcccd07d74650387cf94942a15" +dependencies = [ + "block-buffer", + "digest", + "opaque-debug", +] + +[[package]] +name = "memchr" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-traits" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + +[[package]] +name = "pad-adapter" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56d80efc4b6721e8be2a10a5df21a30fa0b470f1539e53d8b4e6e75faf938b63" + +[[package]] +name = "parking_lot" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.48.5", +] + +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + +[[package]] +name = "pathdiff" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd" + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "pin-project" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "prettyplease" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d3928fb5db768cb86f891ff014f0144589297e3c6a1aba6ed7cecfdace270c7" +dependencies = [ + "proc-macro2", + "syn", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro-utils" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f59e109e2f795a5070e69578c4dc101068139f74616778025ae1011d4cd41a8" +dependencies = [ + "proc-macro2", + "quote", + "smallvec", +] + +[[package]] +name = "proc-macro2" +version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e835ff2298f5721608eb1a980ecaee1aef2c132bf95ecc026a11b7bf3c01c02e" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "proc-macro2-diagnostics" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "version_check", + "yansi", +] + +[[package]] +name = "pwhash" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "419a3ad8fa9f9d445e69d9b185a24878ae6e6f55c96e4512f4a0e28cd3bc5c56" +dependencies = [ + "blowfish", + "byteorder", + "hmac", + "md-5", + "rand", + "sha-1", + "sha2", +] + +[[package]] +name = "quote" +version = "1.0.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "quote-use" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b393938dcaab992375d7b3df7887fa98cc91c2f3590598251e7c609e2b788139" +dependencies = [ + "quote", + "quote-use-macros", +] + +[[package]] +name = "quote-use-macros" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71d8772387900c205780e2c240cfe4dd01355ab4f96a503d99bdf34ad73180ef" +dependencies = [ + "derive-where", + "proc-macro-utils", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "redox_syscall" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags", +] + +[[package]] +name = "regex" +version = "1.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" + +[[package]] +name = "rstml" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe542870b8f59dd45ad11d382e5339c9a1047cde059be136a7016095bbdefa77" +dependencies = [ + "proc-macro2", + "proc-macro2-diagnostics", + "quote", + "syn", + "syn_derive", + "thiserror", +] + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "ryu" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "self_cell" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58bf37232d3bb9a2c4e641ca2a11d83b5062066f88df7fed36c28772046d65ba" + +[[package]] +name = "send_wrapper" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" +dependencies = [ + "futures-core", +] + +[[package]] +name = "serde" +version = "1.0.197" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde-wasm-bindgen" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b" +dependencies = [ + "js-sys", + "serde", + "wasm-bindgen", +] + +[[package]] +name = "serde_derive" +version = "1.0.197" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.115" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12dc5c46daa8e9fdf4f5e71b6cf9a53f2487da0e86e55808e2d35539666497dd" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_qs" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0431a35568651e363364210c91983c1da5eb29404d9f0928b67d4ebcfa7d330c" +dependencies = [ + "percent-encoding", + "serde", + "thiserror", +] + +[[package]] +name = "serde_spanned" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_test" +version = "1.0.176" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a2f49ace1498612d14f7e0b8245519584db8299541dfe31a06374a828d620ab" +dependencies = [ + "serde", +] + +[[package]] +name = "server_fn" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15a46a2ffdecb81430ecfb995989218a18b6e94c1ead50cb806b5927c986a8ce" +dependencies = [ + "bytes", + "ciborium", + "const_format", + "dashmap", + "futures", + "gloo-net", + "http 1.1.0", + "js-sys", + "once_cell", + "send_wrapper", + "serde", + "serde_json", + "serde_qs", + "server_fn_macro_default", + "thiserror", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "xxhash-rust", +] + +[[package]] +name = "server_fn_macro" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "324a248dedb786315ba738f3618dbd65ba0c1b22ebea76f15a3e96a04643a73f" +dependencies = [ + "const_format", + "convert_case", + "proc-macro2", + "quote", + "syn", + "xxhash-rust", +] + +[[package]] +name = "server_fn_macro_default" +version = "0.6.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af19028131998f73134a9adcdefb6d9de2eeaed5b01ef74f6d902a1659d2a32f" +dependencies = [ + "server_fn_macro", + "syn", +] + +[[package]] +name = "sha-1" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" +dependencies = [ + "block-buffer", + "cfg-if", + "cpufeatures", + "digest", + "opaque-debug", +] + +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer", + "cfg-if", + "cpufeatures", + "digest", + "opaque-debug", +] + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "slotmap" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" +dependencies = [ + "serde", + "version_check", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "subtle" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" + +[[package]] +name = "syn" +version = "2.0.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44cfb93f38070beee36b3fef7d4f5a16f27751d94b187b666a5cc5e9b0d30687" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn_derive" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b" +dependencies = [ + "proc-macro-error", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "thiserror" +version = "1.0.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03468839009160513471e86a034bb2c5c0e4baae3b43f79ffc55c4a5427b3297" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.58" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61f3ba182994efc43764a46c018c347bc492c79f024e705f46567b418f6d4f7" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "time" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8248b6521bb14bc45b4067159b9b6ad792e2d6d754d6c41fb50e29fefe38749" +dependencies = [ + "deranged", + "itoa", + "num-conv", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ba3a3ef41e6672a2f0f001392bb5dcd3ff0a9992d618ca761a11c3121547774" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "toml" +version = "0.8.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.22.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e40bb779c5187258fd7aad0eb68cb8706a0a81fa712fbea808ab43c4b8374c4" +dependencies = [ + "indexmap", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", +] + +[[package]] +name = "typed-builder" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "444d8748011b93cb168770e8092458cb0f8854f931ff82fdf6ddfbd72a9c933e" +dependencies = [ + "typed-builder-macro", +] + +[[package]] +name = "typed-builder-macro" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "563b3b88238ec95680aef36bdece66896eaa7ce3c0f1b4f39d38fb2435261352" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "unicode-bidi" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unicode-normalization" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" + +[[package]] +name = "unicode-xid" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" + +[[package]] +name = "url" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", +] + +[[package]] +name = "utf8-width" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3" + +[[package]] +name = "uuid" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" +dependencies = [ + "getrandom", +] + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" + +[[package]] +name = "wasm-streams" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "web-sys" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webadmin" +version = "0.1.0" +dependencies = [ + "ahash", + "base64", + "chrono", + "chrono-humanize", + "console_error_panic_hook", + "console_log", + "form_urlencoded", + "gloo-net", + "gloo-storage", + "humansize", + "leptos", + "leptos-use", + "leptos_meta", + "leptos_router", + "log", + "pwhash", + "regex", + "serde", + "serde_json", + "web-sys", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +dependencies = [ + "winapi", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.4", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd37b7e5ab9018759f893a1952c9420d060016fc19a472b4bb20d1bdd694d1b" +dependencies = [ + "windows_aarch64_gnullvm 0.52.4", + "windows_aarch64_msvc 0.52.4", + "windows_i686_gnu 0.52.4", + "windows_i686_msvc 0.52.4", + "windows_x86_64_gnu 0.52.4", + "windows_x86_64_gnullvm 0.52.4", + "windows_x86_64_msvc 0.52.4", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcf46cf4c365c6f2d1cc93ce535f2c8b244591df96ceee75d8e83deb70a9cac9" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da9f259dd3bcf6990b55bffd094c4f7235817ba4ceebde8e6d11cd0c5633b675" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b474d8268f99e0995f25b9f095bc7434632601028cf86590aea5c8a5cb7801d3" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1515e9a29e5bed743cb4415a9ecf5dfca648ce85ee42e15873c3cd8610ff8e02" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5eee091590e89cc02ad514ffe3ead9eb6b660aedca2183455434b93546371a03" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ca79f2451b49fa9e2af39f0747fe999fcda4f5e241b2898624dca97a1f2177" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32b752e52a2da0ddfbdbcc6fceadfeede4c939ed16d13e648833a61dfb611ed8" + +[[package]] +name = "winnow" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8" +dependencies = [ + "memchr", +] + +[[package]] +name = "xxhash-rust" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "927da81e25be1e1a2901d59b81b37dd2efd1fc9c9345a55007f09bf5a2d3ee03" + +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + +[[package]] +name = "zerocopy" +version = "0.7.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74d4d3961e53fa4c9a25a8637fc2bfaf2595b3d3ae34875568a5cf64787716be" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] diff --git a/Cargo.toml b/Cargo.toml index 715b91c..e5156fd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,15 @@ [package] name = "webadmin" +description = "Stalwart Mail Web-based Admin" +authors = [ "Stalwart Labs Ltd. "] +repository = "https://github.com/stalwartlabs/webadmin" +homepage = "https://stalw.art" +keywords = ["web", "admin", "email", "mail", "server"] +categories = ["email"] +license = "AGPL-3.0-only" version = "0.1.0" edition = "2021" +resolver = "2" [dependencies] console_error_panic_hook = "0.1.7" diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..0ad25db --- /dev/null +++ b/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. diff --git a/src/assets/android-chrome-192x192.png b/src/assets/android-chrome-192x192.png index 37a431b5344506b1f4f5ed754b0e77e5fc7f934b..2c4273919fb2b68e2b7f02f367927466cf17b1e2 100644 GIT binary patch literal 21505 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 H>h1pkYyo0K diff --git a/src/assets/android-chrome-512x512.png b/src/assets/android-chrome-512x512.png index 5867893258db292497690f55678f5296cb8b83c7..7a867cd1c9a6edbd60eeecb7802854023d600149 100644 GIT binary patch literal 104372 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 +6A{NRM}_Pq&81 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 LNkvXXu0mjfGwxf` delta 1093 zcmV-L1iJh94cQ2gBYyw^b5ch_0Itp)=>Px(6G=otR9HvtRb6b8WfXqS`>k6C1(Xa_ zm!;@w2nGHs2FP6jFhEgPYa0uk0I($;lxY+s z>jB!XPYqGDc7Kn9%ZxrIJZ~nwE}8s}VBj3VEK&h9D*~8v@7c}L=qJK1(?6s!I;(?2 zW3vsdSCm}=$i|MiJ z*Z_@>r&O?f0F?b|QA;`zmr6pi10RmhcabL)#$+s(V_rE+@8(M+9d$hro*_DMu&5H z0DQ#=4d7^HQZ{c5kHm@spdNj*?Q!c?TU93$juK!4U@+rTTBi5(NZ_}$ zI2*k$OMg)2hncgPfDQl~&HJAKKETrAX+82)JRjJ+B{&bC_6h=qa+t4cc_gWc9wO{x zKmhmy631^@H-55n;!HBlZqorvBoS)|s0+XbsJeqcvlzl}4+U_O6 zJ{6c!4m0(>T|$%n0PQvdge7o@SPDU+mjS0~|9?(O+2Nf2@`tpa%dibs51=_+Yw*t`(Wy@lf35BcXjPe&AD%qBsP2)*)@K>$17Hp! zzAO##mNOLizEHR1)j-(!(mE!sye>QvQ?$>zTHD0GMlmj?QpVxB@W`wR9CrJhf@L3p zo--3&2lKl%!QszUIc6L$Rwc`<%lY=hN`E4}#Efpe>gJ%DewnhcAHX4V8708@7{tV& zb^B2shycEW}?ycV$F$v>g{TIf`vGygg#M5 z)NP*%e4Eupg)saKdO_WZC;_IAY6@(|yRPFx;`y)aB>*J`N(}rBW_7(Vo$Rxn00000 LNkvXXu0mjf?BftN diff --git a/src/assets/favicon.ico b/src/assets/favicon.ico index e7a64e8d4a2ff266a53514c58b12d6e5a389fbf1..22e759eceef2c80541ae89540d3f94556747a7b4 100644 GIT binary patch literal 15406 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 literal 15406 zcmeHN4Uil~6`mvD526B!zd#NM$=&YET*#sEugX;Bk$)u-?7be{0sSPB0#f2hABw}F0L!Ih`79lS>K*>V?) zmz6!}{|w63M*5Tfqch~|@QtnqO^6>b{0DU{g!su2zXhNn?O0d!`#G`_eZ$~>Z4+bl zOSaK|Sd#D4=Nba^Gwmoj6#A$1N)bpAc&Q*zY4colDg5mq{O;3nS$T=EzF@uh0NVcm zKRBS*QjU&m8~pMr-48SyuufcJS(Ubljy~T}nu&guu-I}VWX#ijg*$u(){=Xx?IE2y zgy*04c8s)ZI;<-faNX8)y|z3{w~bfF@^?bcmAPC6QB*W8=&=fAZ_IN)?pH&`4Oq{( z20~x82jyCg6W2rF@I|!kYDWH|S;Mbo+!5(nX)9*^kAuhGW4T`CzkJs3Lfb$y^36E3(D~Q50_WQy12~2=vOlM3=l_?4sCZE?Hc=rHLy|nj?s8N zn_L>-8}>(jPuA?OMh`3=qkJ!`E^SoMeihocX&syT{?YvVNn-weLHj~#q2<>!itac^ zX&Gdiyz%sk{{z1n`@EW+*=jZ9?GI&RZSrijax%Vt zJo&o4-~?v^`(GGi4RwJ(zNcr_@EMwJs%!j@e-Jt_{$R;XwY-#nia?4$ia@IoV4egi zTI&-iX`Tciq*sbSia?4$ia?6MOALX2t8z@<4mz=y*junwzE=D^_P*xiasy#5(Hs_Y zB>12DFv}vl{ARO__x$G;j_R)Qiuh6nN(W^o`%LDUx)t5vs`$T_xijW+qGGExh0gMH zo!ip<@h|ux(5y${zdp+&i;)-B?NME6TY|hS{?UGf_8QM9KPMq?nGlu3_C4!)jQ_-c zK=7~q7dvtvo;NT*X7&#AgIzLn0EG!NS&% z8&ceJjd-+9|J~sEZRY4ryJY?iIiXLZ4LQr;zlNU3jjDCMuy4;Uos0X2&=%%PW10iV z;cO~8rB5QK@d`Z-<`Tm^gd2PZbbDHXKlgzP*-|xcN?FWVaqa=H-$IUw_dZ}7U@Y}| zLC2ySj#Gj@%E?4_!oCj`I^~?6?!me|G;{34OOLHpHT@0jvc{*(eV;=#1)y|RA-GRQ}6PbX&EK_nVbe=gW%SliTq%B-z z|K&6m)8Y4`0PO6pK3Cbv@rlgvd|?NVg9dvY)$c(WgWx^Sq@V0ya0cXD@Y-we zKZyML6@+@=gp&w$t)0JV)Kh}{t@5dZ}g8Lxhxga}uitmhe(yS*oNx##_ zI3>(u2QRe3e|nvzvk{~8aqm*=p0fsy#lF@1Am_)>0luTocAte!e}#C)^lkJ>pt%~f z8&TKhP_(w)LOpq&O7rKLALQnjB-c3I-b`)UD*K5uORt9>tDy(|P)!%iL12CZ_fyRI ztYtBl;aUPa`!4J(IbX3a8(dGlH9hO3Y_qMo`$}8rKi$BCj^_Rq?Ew2|>W^4Y-)-`w zZ7rES)XwoF3-^`K@31+JcZl0mZ}038_|J*&>zi_u_l&hXSN6bG?gM|*Usv$%Pbilq zal?L(4cZ&wb4Kv3wl*x)ec-C?5et^Ru%~;4U0P_`R8p^rK6{y9E_iaSt=bB(#<@3j z8YwIRsb4Lu)C#t#$KpFWCbHo%u_hl%?k@O`4#)tdN0V|Fpl zz(Uq4$f}FqFce&1xqZ)4%ln1=ocbNh$jW%>hR51$lV8~GnCxwSR+p66g3KY*-c z{0zUUz80RvHSFJ%Ug+F39b;R8zGW11?(V?*?;}n;$E2UCd;0e9zsi<}{l8!y`tYgv zhl%u~4#a%1UAheOk?+ko0`{nWO-zz;#8l~S^5xtpIQ~+6^I;UkW_6f`_+mWWC=a5| zn44i-J%saUpCS*F=h3)lT)_Vh*nonb#vBjFv)ve1_5Yo7;ArT2B$+yY;@SQk4aQKx z*r@wj{v+t~T1Vn_wBIBCJRg3EXR37mYJJi5&pXe XffRuhffRuhffRuhffRw49|Hda4Q8+~ diff --git a/src/components/badge.rs b/src/components/badge.rs index bd29733..3c5bb50 100644 --- a/src/components/badge.rs +++ b/src/components/badge.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use super::Color; diff --git a/src/components/card.rs b/src/components/card.rs index 5567aa8..5ce5a79 100644 --- a/src/components/card.rs +++ b/src/components/card.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; #[slot] diff --git a/src/components/form/button.rs b/src/components/form/button.rs index 794d332..e8f141d 100644 --- a/src/components/form/button.rs +++ b/src/components/form/button.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use crate::components::Color; diff --git a/src/components/form/expression.rs b/src/components/form/expression.rs index fcab577..5c94bc6 100644 --- a/src/components/form/expression.rs +++ b/src/components/form/expression.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use crate::{ diff --git a/src/components/form/input.rs b/src/components/form/input.rs index 9cb3c5d..81a8fe4 100644 --- a/src/components/form/input.rs +++ b/src/components/form/input.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::str::FromStr; use leptos::*; diff --git a/src/components/form/mod.rs b/src/components/form/mod.rs index 9e44d33..4fe21bf 100644 --- a/src/components/form/mod.rs +++ b/src/components/form/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod button; pub mod expression; pub mod input; diff --git a/src/components/form/select.rs b/src/components/form/select.rs index 91c1394..f4e342f 100644 --- a/src/components/form/select.rs +++ b/src/components/form/select.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{ fmt::{Display, Formatter}, str::FromStr, diff --git a/src/components/form/stacked_badge.rs b/src/components/form/stacked_badge.rs index 4ce25fd..961445f 100644 --- a/src/components/form/stacked_badge.rs +++ b/src/components/form/stacked_badge.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use web_sys::wasm_bindgen::JsCast; diff --git a/src/components/form/stacked_input.rs b/src/components/form/stacked_input.rs index 38ae4ed..6a6bc36 100644 --- a/src/components/form/stacked_input.rs +++ b/src/components/form/stacked_input.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use crate::{ diff --git a/src/components/icon.rs b/src/components/icon.rs index 6dc8e5f..43662c7 100644 --- a/src/components/icon.rs +++ b/src/components/icon.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; #[component] diff --git a/src/components/layout/header.rs b/src/components/layout/header.rs index 03e72be..26687e3 100644 --- a/src/components/layout/header.rs +++ b/src/components/layout/header.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::use_navigate; diff --git a/src/components/layout/mod.rs b/src/components/layout/mod.rs index 697fcfa..11a566e 100644 --- a/src/components/layout/mod.rs +++ b/src/components/layout/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod header; pub mod sidebar; pub mod toggle; diff --git a/src/components/layout/sidebar.rs b/src/components/layout/sidebar.rs index 34ce533..c6d380b 100644 --- a/src/components/layout/sidebar.rs +++ b/src/components/layout/sidebar.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::use_location; diff --git a/src/components/layout/toggle.rs b/src/components/layout/toggle.rs index 0342965..d23e54b 100644 --- a/src/components/layout/toggle.rs +++ b/src/components/layout/toggle.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::use_location; diff --git a/src/components/list/header.rs b/src/components/list/header.rs index 255de9b..1f5be48 100644 --- a/src/components/list/header.rs +++ b/src/components/list/header.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::collections::HashSet; use leptos::*; diff --git a/src/components/list/mod.rs b/src/components/list/mod.rs index ad8a578..dc349ab 100644 --- a/src/components/list/mod.rs +++ b/src/components/list/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod header; pub mod pagination; pub mod row; diff --git a/src/components/list/pagination.rs b/src/components/list/pagination.rs index b95b0b4..0c6c471 100644 --- a/src/components/list/pagination.rs +++ b/src/components/list/pagination.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use crate::components::icon::{IconArrowLeft, IconArrowRight}; diff --git a/src/components/list/row.rs b/src/components/list/row.rs index 57e753d..2c68d4e 100644 --- a/src/components/list/row.rs +++ b/src/components/list/row.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::collections::HashSet; use leptos::*; diff --git a/src/components/list/table.rs b/src/components/list/table.rs index b4da9e3..0c9d419 100644 --- a/src/components/list/table.rs +++ b/src/components/list/table.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; #[component] diff --git a/src/components/list/toolbar.rs b/src/components/list/toolbar.rs index f72f486..1b2ce2a 100644 --- a/src/components/list/toolbar.rs +++ b/src/components/list/toolbar.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use web_sys::wasm_bindgen::JsCast; diff --git a/src/components/messages/alert.rs b/src/components/messages/alert.rs index bbbd87c..a468370 100644 --- a/src/components/messages/alert.rs +++ b/src/components/messages/alert.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::time::Duration; use leptos::*; diff --git a/src/components/messages/mod.rs b/src/components/messages/mod.rs index cbd74e3..c7f824d 100644 --- a/src/components/messages/mod.rs +++ b/src/components/messages/mod.rs @@ -1,4 +1,25 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod alert; -//pub mod header; -//pub mod manage; pub mod modal; diff --git a/src/components/messages/modal.rs b/src/components/messages/modal.rs index fda6f04..c23a717 100644 --- a/src/components/messages/modal.rs +++ b/src/components/messages/modal.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::{html::Div, *}; use leptos_use::on_click_outside; use std::sync::Arc; diff --git a/src/components/mod.rs b/src/components/mod.rs index 85975e8..64824d1 100644 --- a/src/components/mod.rs +++ b/src/components/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod badge; pub mod card; pub mod form; diff --git a/src/components/report.rs b/src/components/report.rs index 6e4d1a2..321dd43 100644 --- a/src/components/report.rs +++ b/src/components/report.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; #[component] diff --git a/src/components/skeleton.rs b/src/components/skeleton.rs index 58b2d80..7eeeab8 100644 --- a/src/components/skeleton.rs +++ b/src/components/skeleton.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; #[component] diff --git a/src/core/expr/mod.rs b/src/core/expr/mod.rs index 851e648..fc571af 100644 --- a/src/core/expr/mod.rs +++ b/src/core/expr/mod.rs @@ -1,7 +1,7 @@ /* - * Copyright (c) 2020-2023, Stalwart Labs Ltd. + * Copyright (c) 2024, Stalwart Labs Ltd. * - * This file is part of Stalwart Mail Server. + * This file is part of Stalwart Mail Web-based Admin. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as diff --git a/src/core/expr/parser.rs b/src/core/expr/parser.rs index 3273013..afe77d3 100644 --- a/src/core/expr/parser.rs +++ b/src/core/expr/parser.rs @@ -1,7 +1,7 @@ /* - * Copyright (c) 2020-2023, Stalwart Labs Ltd. + * Copyright (c) 2024, Stalwart Labs Ltd. * - * This file is part of Stalwart Mail Server. + * This file is part of Stalwart Mail Web-based Admin. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as diff --git a/src/core/expr/tokenizer.rs b/src/core/expr/tokenizer.rs index 9e6e14b..70e0ce5 100644 --- a/src/core/expr/tokenizer.rs +++ b/src/core/expr/tokenizer.rs @@ -1,7 +1,7 @@ /* - * Copyright (c) 2020-2023, Stalwart Labs Ltd. + * Copyright (c) 2024, Stalwart Labs Ltd. * - * This file is part of Stalwart Mail Server. + * This file is part of Stalwart Mail Web-based Admin. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as diff --git a/src/core/form.rs b/src/core/form.rs index d23dd7c..37159f4 100644 --- a/src/core/form.rs +++ b/src/core/form.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::borrow::Cow; use std::hash::{DefaultHasher, Hash, Hasher}; use std::net::SocketAddr; diff --git a/src/core/http.rs b/src/core/http.rs index 8a3cd9a..39d16ce 100644 --- a/src/core/http.rs +++ b/src/core/http.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use base64::{engine::general_purpose::STANDARD, Engine}; use gloo_net::http::{Headers, Method, RequestBuilder}; use serde::{de::DeserializeOwned, Deserialize, Serialize}; diff --git a/src/core/mod.rs b/src/core/mod.rs index 84ece97..fd8ebda 100644 --- a/src/core/mod.rs +++ b/src/core/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod expr; pub mod form; pub mod http; diff --git a/src/core/oauth.rs b/src/core/oauth.rs index bf1436f..b60daaf 100644 --- a/src/core/oauth.rs +++ b/src/core/oauth.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{sync::Arc, time::Duration}; use leptos::{expect_context, RwSignal}; diff --git a/src/core/schema.rs b/src/core/schema.rs index 8e38ca4..b0ee275 100644 --- a/src/core/schema.rs +++ b/src/core/schema.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{hash::Hasher, sync::Arc}; use ahash::AHashMap; diff --git a/src/core/url.rs b/src/core/url.rs index 75d8911..4a043d9 100644 --- a/src/core/url.rs +++ b/src/core/url.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub struct UrlBuilder { pub url: form_urlencoded::Serializer<'static, String>, } diff --git a/src/main.rs b/src/main.rs index 74ed81e..3b9597a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + #![allow(unstable_name_collisions)] use core::schema::Schemas; use std::{sync::Arc, time::Duration}; diff --git a/src/pages/account/crypto.rs b/src/pages/account/crypto.rs index e07828d..a4a5936 100644 --- a/src/pages/account/crypto.rs +++ b/src/pages/account/crypto.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{str::FromStr, sync::Arc}; use leptos::*; diff --git a/src/pages/account/mod.rs b/src/pages/account/mod.rs index 80fff10..3d0c954 100644 --- a/src/pages/account/mod.rs +++ b/src/pages/account/mod.rs @@ -1,2 +1,25 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod crypto; pub mod password; diff --git a/src/pages/account/password.rs b/src/pages/account/password.rs index 936836b..0387fc5 100644 --- a/src/pages/account/password.rs +++ b/src/pages/account/password.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::sync::Arc; use leptos::*; diff --git a/src/pages/authorize.rs b/src/pages/authorize.rs index c195064..73b7642 100644 --- a/src/pages/authorize.rs +++ b/src/pages/authorize.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::sync::Arc; use leptos::*; diff --git a/src/pages/config/edit.rs b/src/pages/config/edit.rs index 8cc6a87..1c14297 100644 --- a/src/pages/config/edit.rs +++ b/src/pages/config/edit.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::sync::Arc; use ahash::AHashMap; diff --git a/src/pages/config/list.rs b/src/pages/config/list.rs index aba5f66..d06db5e 100644 --- a/src/pages/config/list.rs +++ b/src/pages/config/list.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{collections::HashSet, sync::Arc}; use leptos::*; diff --git a/src/pages/config/mod.rs b/src/pages/config/mod.rs index 48630f8..dc6cb8d 100644 --- a/src/pages/config/mod.rs +++ b/src/pages/config/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod edit; pub mod list; pub mod schema; diff --git a/src/pages/config/schema/auth.rs b/src/pages/config/schema/auth.rs index 424d295..9aef1e4 100644 --- a/src/pages/config/schema/auth.rs +++ b/src/pages/config/schema/auth.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::{form::Expression, schema::*}; use super::{smtp::*, CONNECTION_VARS, RCPT_DOMAIN_VARS, SMTP_RCPT_TO_VARS}; diff --git a/src/pages/config/schema/authentication.rs b/src/pages/config/schema/authentication.rs index a07db85..8dfab8d 100644 --- a/src/pages/config/schema/authentication.rs +++ b/src/pages/config/schema/authentication.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use super::*; impl Builder { diff --git a/src/pages/config/schema/directory.rs b/src/pages/config/schema/directory.rs index e2737ae..ea297d4 100644 --- a/src/pages/config/schema/directory.rs +++ b/src/pages/config/schema/directory.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; impl Builder { diff --git a/src/pages/config/schema/imap.rs b/src/pages/config/schema/imap.rs index 056590f..44f2a93 100644 --- a/src/pages/config/schema/imap.rs +++ b/src/pages/config/schema/imap.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; impl Builder { diff --git a/src/pages/config/schema/jmap.rs b/src/pages/config/schema/jmap.rs index 4d8bb49..9fba139 100644 --- a/src/pages/config/schema/jmap.rs +++ b/src/pages/config/schema/jmap.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; impl Builder { diff --git a/src/pages/config/schema/listener.rs b/src/pages/config/schema/listener.rs index 4b5a0af..86e1a0a 100644 --- a/src/pages/config/schema/listener.rs +++ b/src/pages/config/schema/listener.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; impl Builder { diff --git a/src/pages/config/schema/mod.rs b/src/pages/config/schema/mod.rs index e92f90f..91ea63f 100644 --- a/src/pages/config/schema/mod.rs +++ b/src/pages/config/schema/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod auth; pub mod authentication; pub mod directory; diff --git a/src/pages/config/schema/server.rs b/src/pages/config/schema/server.rs index b49a6c6..56cab37 100644 --- a/src/pages/config/schema/server.rs +++ b/src/pages/config/schema/server.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; use super::CONNECTION_VARS; diff --git a/src/pages/config/schema/sieve.rs b/src/pages/config/schema/sieve.rs index a804ba6..9ebf41a 100644 --- a/src/pages/config/schema/sieve.rs +++ b/src/pages/config/schema/sieve.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; use super::SMTP_RCPT_TO_VARS; diff --git a/src/pages/config/schema/smtp.rs b/src/pages/config/schema/smtp.rs index 4d0ba18..6804bb0 100644 --- a/src/pages/config/schema/smtp.rs +++ b/src/pages/config/schema/smtp.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::{form::Expression, schema::*}; use super::*; diff --git a/src/pages/config/schema/spamlists.rs b/src/pages/config/schema/spamlists.rs index ebc37b8..a3aa981 100644 --- a/src/pages/config/schema/spamlists.rs +++ b/src/pages/config/schema/spamlists.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use super::*; impl Builder { diff --git a/src/pages/config/schema/storage.rs b/src/pages/config/schema/storage.rs index c46b51b..9a50fda 100644 --- a/src/pages/config/schema/storage.rs +++ b/src/pages/config/schema/storage.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use super::*; impl Builder { diff --git a/src/pages/config/schema/store.rs b/src/pages/config/schema/store.rs index 79ea05e..d2f0453 100644 --- a/src/pages/config/schema/store.rs +++ b/src/pages/config/schema/store.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use super::*; const PGSQL_NAME: &str = diff --git a/src/pages/config/schema/tls.rs b/src/pages/config/schema/tls.rs index 6dc4744..a0766a7 100644 --- a/src/pages/config/schema/tls.rs +++ b/src/pages/config/schema/tls.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; impl Builder { diff --git a/src/pages/config/schema/tracing.rs b/src/pages/config/schema/tracing.rs index a4858c9..a3b61b3 100644 --- a/src/pages/config/schema/tracing.rs +++ b/src/pages/config/schema/tracing.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use crate::core::schema::*; impl Builder { diff --git a/src/pages/config/search.rs b/src/pages/config/search.rs index 7db855c..4547756 100644 --- a/src/pages/config/search.rs +++ b/src/pages/config/search.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::sync::Arc; use leptos::*; diff --git a/src/pages/directory/domains/display.rs b/src/pages/directory/domains/display.rs index 4ada337..c0d60ad 100644 --- a/src/pages/directory/domains/display.rs +++ b/src/pages/directory/domains/display.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::{use_navigate, use_params_map}; use serde::{Deserialize, Serialize}; diff --git a/src/pages/directory/domains/edit.rs b/src/pages/directory/domains/edit.rs index 30c6202..f8d1c27 100644 --- a/src/pages/directory/domains/edit.rs +++ b/src/pages/directory/domains/edit.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::sync::Arc; use leptos::*; diff --git a/src/pages/directory/domains/list.rs b/src/pages/directory/domains/list.rs index 9d217c3..712c342 100644 --- a/src/pages/directory/domains/list.rs +++ b/src/pages/directory/domains/list.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{collections::HashSet, sync::Arc}; use leptos::*; diff --git a/src/pages/directory/domains/mod.rs b/src/pages/directory/domains/mod.rs index 51bc9ac..92c9096 100644 --- a/src/pages/directory/domains/mod.rs +++ b/src/pages/directory/domains/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod display; pub mod edit; pub mod list; diff --git a/src/pages/directory/mod.rs b/src/pages/directory/mod.rs index 7363f9c..262eba2 100644 --- a/src/pages/directory/mod.rs +++ b/src/pages/directory/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::str::FromStr; use serde::{Deserialize, Serialize}; diff --git a/src/pages/directory/principals/edit.rs b/src/pages/directory/principals/edit.rs index ab18590..bb614c8 100644 --- a/src/pages/directory/principals/edit.rs +++ b/src/pages/directory/principals/edit.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{sync::Arc, vec}; use humansize::{format_size, DECIMAL}; diff --git a/src/pages/directory/principals/list.rs b/src/pages/directory/principals/list.rs index 5975048..c1d470b 100644 --- a/src/pages/directory/principals/list.rs +++ b/src/pages/directory/principals/list.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{collections::HashSet, sync::Arc}; use humansize::{format_size, DECIMAL}; diff --git a/src/pages/directory/principals/mod.rs b/src/pages/directory/principals/mod.rs index 77b4df3..fa9b5b2 100644 --- a/src/pages/directory/principals/mod.rs +++ b/src/pages/directory/principals/mod.rs @@ -1,2 +1,25 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod edit; pub mod list; diff --git a/src/pages/login.rs b/src/pages/login.rs index 599105e..727e29d 100644 --- a/src/pages/login.rs +++ b/src/pages/login.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{sync::Arc, time::Duration}; use gloo_storage::{LocalStorage, SessionStorage, Storage}; diff --git a/src/pages/manage/logs.rs b/src/pages/manage/logs.rs index 4058124..5aac032 100644 --- a/src/pages/manage/logs.rs +++ b/src/pages/manage/logs.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use chrono::{DateTime, Utc}; use leptos::*; use leptos_router::*; diff --git a/src/pages/manage/maintenance.rs b/src/pages/manage/maintenance.rs index 5c64f8e..d1ef663 100644 --- a/src/pages/manage/maintenance.rs +++ b/src/pages/manage/maintenance.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::use_navigate; diff --git a/src/pages/manage/mod.rs b/src/pages/manage/mod.rs index ff00790..c1529d2 100644 --- a/src/pages/manage/mod.rs +++ b/src/pages/manage/mod.rs @@ -1,2 +1,25 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod logs; pub mod maintenance; diff --git a/src/pages/mod.rs b/src/pages/mod.rs index 918b0ab..2f5cb5f 100644 --- a/src/pages/mod.rs +++ b/src/pages/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use chrono::{DateTime, Local, Utc}; use serde::{Deserialize, Serialize}; diff --git a/src/pages/notfound.rs b/src/pages/notfound.rs index 439ab57..85ee8c1 100644 --- a/src/pages/notfound.rs +++ b/src/pages/notfound.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_meta::*; diff --git a/src/pages/queue/messages/list.rs b/src/pages/queue/messages/list.rs index 57538b5..aa3b99b 100644 --- a/src/pages/queue/messages/list.rs +++ b/src/pages/queue/messages/list.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::*; use std::collections::HashSet; diff --git a/src/pages/queue/messages/manage.rs b/src/pages/queue/messages/manage.rs index 327282c..02d5796 100644 --- a/src/pages/queue/messages/manage.rs +++ b/src/pages/queue/messages/manage.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{collections::HashSet, vec}; use chrono::Utc; diff --git a/src/pages/queue/messages/mod.rs b/src/pages/queue/messages/mod.rs index c2e3b62..b62ee2a 100644 --- a/src/pages/queue/messages/mod.rs +++ b/src/pages/queue/messages/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod list; pub mod manage; diff --git a/src/pages/queue/mod.rs b/src/pages/queue/mod.rs index 3a71791..3cc6a4e 100644 --- a/src/pages/queue/mod.rs +++ b/src/pages/queue/mod.rs @@ -1,2 +1,25 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod messages; pub mod reports; diff --git a/src/pages/queue/reports/arf.rs b/src/pages/queue/reports/arf.rs index cabd7d7..05df949 100644 --- a/src/pages/queue/reports/arf.rs +++ b/src/pages/queue/reports/arf.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::vec; use chrono::{DateTime, Utc}; diff --git a/src/pages/queue/reports/display.rs b/src/pages/queue/reports/display.rs index bab5746..364defd 100644 --- a/src/pages/queue/reports/display.rs +++ b/src/pages/queue/reports/display.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{collections::HashSet, vec}; use leptos::*; diff --git a/src/pages/queue/reports/dmarc.rs b/src/pages/queue/reports/dmarc.rs index 103c503..ca8757e 100644 --- a/src/pages/queue/reports/dmarc.rs +++ b/src/pages/queue/reports/dmarc.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{ hash::{DefaultHasher, Hash, Hasher}, vec, diff --git a/src/pages/queue/reports/list.rs b/src/pages/queue/reports/list.rs index 65b72bc..5a6d611 100644 --- a/src/pages/queue/reports/list.rs +++ b/src/pages/queue/reports/list.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::*; use std::collections::HashSet; diff --git a/src/pages/queue/reports/mod.rs b/src/pages/queue/reports/mod.rs index 42afa59..132e1e6 100644 --- a/src/pages/queue/reports/mod.rs +++ b/src/pages/queue/reports/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + pub mod arf; pub mod display; pub mod dmarc; diff --git a/src/pages/queue/reports/tls.rs b/src/pages/queue/reports/tls.rs index 5dcc3fc..424e0f4 100644 --- a/src/pages/queue/reports/tls.rs +++ b/src/pages/queue/reports/tls.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{ hash::{DefaultHasher, Hash, Hasher}, vec, diff --git a/src/pages/reports/display.rs b/src/pages/reports/display.rs index efb3b9e..062f885 100644 --- a/src/pages/reports/display.rs +++ b/src/pages/reports/display.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use std::{collections::HashSet, vec}; use leptos::*; diff --git a/src/pages/reports/list.rs b/src/pages/reports/list.rs index 7a4f5fd..2c31255 100644 --- a/src/pages/reports/list.rs +++ b/src/pages/reports/list.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use leptos::*; use leptos_router::*; use std::collections::HashSet; diff --git a/src/pages/reports/mod.rs b/src/pages/reports/mod.rs index 938ed3f..0c752c7 100644 --- a/src/pages/reports/mod.rs +++ b/src/pages/reports/mod.rs @@ -1,3 +1,26 @@ +/* + * Copyright (c) 2024, Stalwart Labs Ltd. + * + * This file is part of Stalwart Mail Web-based Admin. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License as + * published by the Free Software Foundation, either version 3 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Affero General Public License for more details. + * in the LICENSE file at the top-level directory of this distribution. + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see . + * + * You can be released from the requirements of the AGPLv3 license by + * purchasing a commercial license. Please contact licensing@stalw.art + * for more details. +*/ + use chrono::{DateTime, Utc}; use serde::{Deserialize, Serialize};