From 2f3dde35b31b0c17bd1aaa53c0c4f9f6bfbefafe Mon Sep 17 00:00:00 2001 From: Lucas Nogueira Date: Fri, 17 Feb 2023 17:38:04 -0300 Subject: [PATCH] feat(camera): add plugin for Android and iOS --- Cargo.lock | 11 + Cargo.toml | 1 + plugins/camera/.gitignore | 4 + plugins/camera/Cargo.toml | 18 + plugins/camera/LICENSE.spdx | 20 + plugins/camera/LICENSE_APACHE-2.0 | 177 + plugins/camera/LICENSE_MIT | 21 + plugins/camera/README.md | 84 + plugins/camera/android/.gitignore | 2 + plugins/camera/android/build.gradle.kts | 46 + plugins/camera/android/proguard-rules.pro | 21 + plugins/camera/android/settings.gradle | 2 + .../tauri/camera/ExampleInstrumentedTest.kt | 24 + .../android/src/main/AndroidManifest.xml | 4 + .../camera/CameraBottomSheetDialogFragment.kt | 102 + .../java/app/tauri/camera/CameraPlugin.kt | 827 ++++ .../main/java/app/tauri/camera/CameraUtils.kt | 39 + .../main/java/app/tauri/camera/ExifWrapper.kt | 198 + .../main/java/app/tauri/camera/ImageUtils.kt | 126 + .../java/app/tauri/camera/ExampleUnitTest.kt | 17 + plugins/camera/build.rs | 16 + plugins/camera/examples/tauri-app/.gitignore | 24 + plugins/camera/examples/tauri-app/README.md | 1 + plugins/camera/examples/tauri-app/index.html | 14 + .../camera/examples/tauri-app/jsconfig.json | 34 + .../camera/examples/tauri-app/package.json | 23 + .../examples/tauri-app/src-tauri/.gitignore | 5 + .../examples/tauri-app/src-tauri/Cargo.lock | 3515 +++++++++++++++++ .../examples/tauri-app/src-tauri/Cargo.toml | 27 + .../examples/tauri-app/src-tauri/build.rs | 3 + .../src-tauri/gen/android/app/.editorconfig | 12 + .../src-tauri/gen/android/app/.gitignore | 18 + .../src-tauri/gen/android/app/app/.gitignore | 1 + .../gen/android/app/app/build.gradle.kts | 117 + .../gen/android/app/app/proguard-rules.pro | 21 + .../gen/android/app/app/proguard-tauri.pro | 24 + .../app/app/src/main/AndroidManifest.xml | 34 + .../main/java/app/tauri/app/MainActivity.kt | 7 + .../app/src/main/jniLibs/arm64-v8a/libapp.so | 1 + .../app/app/src/main/jniLibs/x86/libapp.so | 1 + .../drawable-v24/ic_launcher_foreground.xml | 30 + .../res/drawable/ic_launcher_background.xml | 170 + .../app/src/main/res/layout/activity_main.xml | 18 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3524 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 0 -> 14102 bytes .../res/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 3524 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 3377 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 0 -> 9081 bytes .../res/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 3377 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 7971 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 0 -> 18900 bytes .../res/mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 7971 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 12392 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 0 -> 29506 bytes .../res/mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 12392 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 16751 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 0 -> 40510 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 16751 bytes .../app/src/main/res/values-night/themes.xml | 16 + .../app/app/src/main/res/values/colors.xml | 10 + .../app/app/src/main/res/values/strings.xml | 4 + .../app/app/src/main/res/values/themes.xml | 16 + .../app/app/src/main/res/xml/file_paths.xml | 5 + .../android/app/app/tauri.build.gradle.kts | 8 + .../gen/android/app/build.gradle.kts | 25 + .../gen/android/app/buildSrc/build.gradle.kts | 23 + .../java/app/tauri/app/kotlin/BuildTask.kt | 43 + .../java/app/tauri/app/kotlin/RustPlugin.kt | 59 + .../gen/android/app/gradle.properties | 23 + .../app/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + .../src-tauri/gen/android/app/gradlew | 185 + .../src-tauri/gen/android/app/gradlew.bat | 89 + .../src-tauri/gen/android/app/settings.gradle | 6 + .../gen/android/app/tauri.settings.gradle | 3 + .../tauri-app/src-tauri/icons/128x128.png | Bin 0 -> 11059 bytes .../tauri-app/src-tauri/icons/128x128@2x.png | Bin 0 -> 23137 bytes .../tauri-app/src-tauri/icons/32x32.png | Bin 0 -> 2225 bytes .../tauri-app/src-tauri/icons/icon.icns | Bin 0 -> 277003 bytes .../tauri-app/src-tauri/icons/icon.ico | Bin 0 -> 37710 bytes .../tauri-app/src-tauri/icons/icon.png | Bin 0 -> 49979 bytes .../examples/tauri-app/src-tauri/src/lib.rs | 11 + .../tauri-app/src-tauri/tauri.conf.json | 66 + .../camera/examples/tauri-app/src/App.svelte | 9 + .../tauri-app/src/lib/GetPhoto.svelte | 31 + plugins/camera/examples/tauri-app/src/main.js | 8 + .../camera/examples/tauri-app/src/style.css | 102 + .../examples/tauri-app/src/vite-env.d.ts | 2 + .../camera/examples/tauri-app/vite.config.js | 40 + plugins/camera/guest-js/index.ts | 50 + plugins/camera/ios/.gitignore | 11 + plugins/camera/ios/Package.swift | 31 + plugins/camera/ios/README.md | 3 + .../camera/ios/Sources/CameraExtensions.swift | 105 + plugins/camera/ios/Sources/CameraPlugin.swift | 576 +++ plugins/camera/ios/Sources/CameraTypes.swift | 142 + plugins/camera/ios/Sources/ImageSaver.swift | 20 + .../ios/Tests/PluginTests/PluginTests.swift | 8 + plugins/camera/package.json | 33 + plugins/camera/rollup.config.mjs | 11 + plugins/camera/src/error.rs | 24 + plugins/camera/src/lib.rs | 60 + plugins/camera/src/models.rs | 38 + plugins/camera/tsconfig.json | 4 + pnpm-lock.yaml | 551 +++ 105 files changed, 8317 insertions(+) create mode 100644 plugins/camera/.gitignore create mode 100644 plugins/camera/Cargo.toml create mode 100644 plugins/camera/LICENSE.spdx create mode 100644 plugins/camera/LICENSE_APACHE-2.0 create mode 100644 plugins/camera/LICENSE_MIT create mode 100644 plugins/camera/README.md create mode 100644 plugins/camera/android/.gitignore create mode 100644 plugins/camera/android/build.gradle.kts create mode 100644 plugins/camera/android/proguard-rules.pro create mode 100644 plugins/camera/android/settings.gradle create mode 100644 plugins/camera/android/src/androidTest/java/app/tauri/camera/ExampleInstrumentedTest.kt create mode 100644 plugins/camera/android/src/main/AndroidManifest.xml create mode 100644 plugins/camera/android/src/main/java/app/tauri/camera/CameraBottomSheetDialogFragment.kt create mode 100644 plugins/camera/android/src/main/java/app/tauri/camera/CameraPlugin.kt create mode 100644 plugins/camera/android/src/main/java/app/tauri/camera/CameraUtils.kt create mode 100644 plugins/camera/android/src/main/java/app/tauri/camera/ExifWrapper.kt create mode 100644 plugins/camera/android/src/main/java/app/tauri/camera/ImageUtils.kt create mode 100644 plugins/camera/android/src/test/java/app/tauri/camera/ExampleUnitTest.kt create mode 100644 plugins/camera/build.rs create mode 100644 plugins/camera/examples/tauri-app/.gitignore create mode 100644 plugins/camera/examples/tauri-app/README.md create mode 100644 plugins/camera/examples/tauri-app/index.html create mode 100644 plugins/camera/examples/tauri-app/jsconfig.json create mode 100644 plugins/camera/examples/tauri-app/package.json create mode 100644 plugins/camera/examples/tauri-app/src-tauri/.gitignore create mode 100644 plugins/camera/examples/tauri-app/src-tauri/Cargo.lock create mode 100644 plugins/camera/examples/tauri-app/src-tauri/Cargo.toml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/build.rs create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.editorconfig create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.gitignore create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/.gitignore create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/build.gradle.kts create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-rules.pro create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-tauri.pro create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/AndroidManifest.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/java/app/tauri/app/MainActivity.kt create mode 120000 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/arm64-v8a/libapp.so create mode 120000 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/x86/libapp.so create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/layout/activity_main.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-hdpi/ic_launcher_round.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-mdpi/ic_launcher_round.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values-night/themes.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/colors.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/strings.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/themes.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/xml/file_paths.xml create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/tauri.build.gradle.kts create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/build.gradle.kts create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/build.gradle.kts create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/BuildTask.kt create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/RustPlugin.kt create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle.properties create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle/wrapper/gradle-wrapper.jar create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle/wrapper/gradle-wrapper.properties create mode 100755 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew.bat create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/settings.gradle create mode 100644 plugins/camera/examples/tauri-app/src-tauri/gen/android/app/tauri.settings.gradle create mode 100644 plugins/camera/examples/tauri-app/src-tauri/icons/128x128.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/icons/128x128@2x.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/icons/32x32.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/icons/icon.icns create mode 100644 plugins/camera/examples/tauri-app/src-tauri/icons/icon.ico create mode 100644 plugins/camera/examples/tauri-app/src-tauri/icons/icon.png create mode 100644 plugins/camera/examples/tauri-app/src-tauri/src/lib.rs create mode 100644 plugins/camera/examples/tauri-app/src-tauri/tauri.conf.json create mode 100644 plugins/camera/examples/tauri-app/src/App.svelte create mode 100644 plugins/camera/examples/tauri-app/src/lib/GetPhoto.svelte create mode 100644 plugins/camera/examples/tauri-app/src/main.js create mode 100644 plugins/camera/examples/tauri-app/src/style.css create mode 100644 plugins/camera/examples/tauri-app/src/vite-env.d.ts create mode 100644 plugins/camera/examples/tauri-app/vite.config.js create mode 100644 plugins/camera/guest-js/index.ts create mode 100644 plugins/camera/ios/.gitignore create mode 100644 plugins/camera/ios/Package.swift create mode 100644 plugins/camera/ios/README.md create mode 100644 plugins/camera/ios/Sources/CameraExtensions.swift create mode 100644 plugins/camera/ios/Sources/CameraPlugin.swift create mode 100644 plugins/camera/ios/Sources/CameraTypes.swift create mode 100644 plugins/camera/ios/Sources/ImageSaver.swift create mode 100644 plugins/camera/ios/Tests/PluginTests/PluginTests.swift create mode 100644 plugins/camera/package.json create mode 100644 plugins/camera/rollup.config.mjs create mode 100644 plugins/camera/src/error.rs create mode 100644 plugins/camera/src/lib.rs create mode 100644 plugins/camera/src/models.rs create mode 100644 plugins/camera/tsconfig.json diff --git a/Cargo.lock b/Cargo.lock index b0b561c4..ed09c5f9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4408,6 +4408,17 @@ dependencies = [ "thiserror", ] +[[package]] +name = "tauri-plugin-camera" +version = "0.0.0" +dependencies = [ + "serde", + "serde_json", + "tauri", + "tauri-build", + "thiserror", +] + [[package]] name = "tauri-plugin-fs-extra" version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml index 46b0ee6a..a7f742f8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,3 +15,4 @@ edition = "2021" authors = [ "Tauri Programme within The Commons Conservancy" ] license = "Apache-2.0 OR MIT" rust-version = "1.64" +exclude = ["/examples"] diff --git a/plugins/camera/.gitignore b/plugins/camera/.gitignore new file mode 100644 index 00000000..d29055d3 --- /dev/null +++ b/plugins/camera/.gitignore @@ -0,0 +1,4 @@ +/target +/Cargo.lock + +!dist-js \ No newline at end of file diff --git a/plugins/camera/Cargo.toml b/plugins/camera/Cargo.toml new file mode 100644 index 00000000..5b53ef67 --- /dev/null +++ b/plugins/camera/Cargo.toml @@ -0,0 +1,18 @@ +[package] +name = "tauri-plugin-camera" +version = "0.0.0" +description = "Ask the user take a photo with the camera or select an image from the gallery." +authors.workspace = true +license.workspace = true +edition.workspace = true +rust-version.workspace = true +exclude.workspace = true + +[dependencies] +serde.workspace = true +serde_json.workspace = true +tauri.workspace = true +thiserror.workspace = true + +[build-dependencies] +tauri-build.workspace = true diff --git a/plugins/camera/LICENSE.spdx b/plugins/camera/LICENSE.spdx new file mode 100644 index 00000000..cdd0df5a --- /dev/null +++ b/plugins/camera/LICENSE.spdx @@ -0,0 +1,20 @@ +SPDXVersion: SPDX-2.1 +DataLicense: CC0-1.0 +PackageName: tauri +DataFormat: SPDXRef-1 +PackageSupplier: Organization: The Tauri Programme in the Commons Conservancy +PackageHomePage: https://tauri.app +PackageLicenseDeclared: Apache-2.0 +PackageLicenseDeclared: MIT +PackageCopyrightText: 2019-2022, The Tauri Programme in the Commons Conservancy +PackageSummary: Tauri is a rust project that enables developers to make secure +and small desktop applications using a web frontend. + +PackageComment: The package includes the following libraries; see +Relationship information. + +Created: 2019-05-20T09:00:00Z +PackageDownloadLocation: git://github.com/tauri-apps/tauri +PackageDownloadLocation: git+https://github.com/tauri-apps/tauri.git +PackageDownloadLocation: git+ssh://github.com/tauri-apps/tauri.git +Creator: Person: Daniel Thompson-Yvetot \ No newline at end of file diff --git a/plugins/camera/LICENSE_APACHE-2.0 b/plugins/camera/LICENSE_APACHE-2.0 new file mode 100644 index 00000000..4947287f --- /dev/null +++ b/plugins/camera/LICENSE_APACHE-2.0 @@ -0,0 +1,177 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS \ No newline at end of file diff --git a/plugins/camera/LICENSE_MIT b/plugins/camera/LICENSE_MIT new file mode 100644 index 00000000..4d754725 --- /dev/null +++ b/plugins/camera/LICENSE_MIT @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017 - Present Tauri Apps Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/plugins/camera/README.md b/plugins/camera/README.md new file mode 100644 index 00000000..605789a2 --- /dev/null +++ b/plugins/camera/README.md @@ -0,0 +1,84 @@ +# Camera Plugin + +Prompt the user to take a photo using the camera or pick an image from the gallery. Mobile only. + +## Install + +There are three general methods of installation that we can recommend. + +1. Use crates.io and npm (easiest, and requires you to trust that our publishing pipeline worked) +2. Pull sources directly from Github using git tags / revision hashes (most secure) +3. Git submodule install this repo in your tauri project and then use file protocol to ingest the source (most secure, but inconvenient to use) + +Install the Core plugin by adding the following to your `Cargo.toml` file: + +```toml +[dependencies] +tauri-plugin-camera = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "feat/camera" } +``` + +You can install the JavaScript Guest bindings using your preferred JavaScript package manager: + +> Note: Since most JavaScript package managers are unable to install packages from git monorepos we provide read-only mirrors of each plugin. This makes installation option 2 more ergonomic to use. + +```sh +npm install 'https://gitpkg.now.sh/tauri-apps/plugins-workspace/plugins/camera?feat/camera' +# or +yarn add 'https://gitpkg.now.sh/tauri-apps/plugins-workspace/plugins/camera?feat/camera' +``` + +**NOT AVAILABLE YET, WILL BE READY WHEN WE MERGE THE BRANCH:** +```sh +pnpm add https://github.com/tauri-apps/tauri-plugin-camera +# or +npm add https://github.com/tauri-apps/tauri-plugin-camera +# or +yarn add https://github.com/tauri-apps/tauri-plugin-camera +``` + +## Usage + +Register the core plugin with Tauri: + +`src-tauri/src/lib.rs` + +```rust +#[cfg_attr(mobile, tauri::mobile_entry_point)] +pub fn run() { + tauri::Builder::default() + .plugin(tauri_plugin_camera::init()) + .run(tauri::generate_context!()) + .expect("error while running tauri application"); +} + +``` + +Afterwards all the plugin's APIs are available through the JavaScript guest bindings: + +```javascript +import { getPhoto } from "tauri-plugin-camera-api"; +const image = await getPhoto(); +``` + +### Android + +Add the following permissions on the `src-tauri/gen/android/$(APPNAME)/app/src/main/AndroidManifest.xml` file: + +```xml + + +``` + +### iOS + +Configure the following properties on `src-tauri/gen/apple/$(APPNAME)_iOS/Info.plist`: + +```xml +NSCameraUsageDescription +Description for the camera usage here +NSPhotoLibraryAddUsageDescription +Description for the library add usage here +NSPhotoLibraryUsageDescription +Description for the library usage here +``` + diff --git a/plugins/camera/android/.gitignore b/plugins/camera/android/.gitignore new file mode 100644 index 00000000..fb9b198b --- /dev/null +++ b/plugins/camera/android/.gitignore @@ -0,0 +1,2 @@ +/build +/tauri-api diff --git a/plugins/camera/android/build.gradle.kts b/plugins/camera/android/build.gradle.kts new file mode 100644 index 00000000..1b536c19 --- /dev/null +++ b/plugins/camera/android/build.gradle.kts @@ -0,0 +1,46 @@ +plugins { + id("com.android.library") + id("org.jetbrains.kotlin.android") +} + +android { + namespace = "app.tauri.camera" + compileSdk = 32 + + defaultConfig { + minSdk = 24 + targetSdk = 32 + + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + consumerProguardFiles("consumer-rules.pro") + } + + buildTypes { + release { + isMinifyEnabled = false + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), + "proguard-rules.pro" + ) + } + } + compileOptions { + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 + } + kotlinOptions { + jvmTarget = "1.8" + } +} + +dependencies { + + implementation("androidx.core:core-ktx:1.9.0") + implementation("androidx.appcompat:appcompat:1.6.0") + implementation("com.google.android.material:material:1.7.0") + testImplementation("junit:junit:4.13.2") + androidTestImplementation("androidx.test.ext:junit:1.1.5") + androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") + implementation("androidx.exifinterface:exifinterface:1.3.3") + implementation(project(":tauri-android")) +} diff --git a/plugins/camera/android/proguard-rules.pro b/plugins/camera/android/proguard-rules.pro new file mode 100644 index 00000000..481bb434 --- /dev/null +++ b/plugins/camera/android/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/plugins/camera/android/settings.gradle b/plugins/camera/android/settings.gradle new file mode 100644 index 00000000..32f9aac2 --- /dev/null +++ b/plugins/camera/android/settings.gradle @@ -0,0 +1,2 @@ +include ':tauri-android' +project(':tauri-android').projectDir = new File('./tauri-api') diff --git a/plugins/camera/android/src/androidTest/java/app/tauri/camera/ExampleInstrumentedTest.kt b/plugins/camera/android/src/androidTest/java/app/tauri/camera/ExampleInstrumentedTest.kt new file mode 100644 index 00000000..5f729a50 --- /dev/null +++ b/plugins/camera/android/src/androidTest/java/app/tauri/camera/ExampleInstrumentedTest.kt @@ -0,0 +1,24 @@ +package app.tauri.camera + +import androidx.test.platform.app.InstrumentationRegistry +import androidx.test.ext.junit.runners.AndroidJUnit4 + +import org.junit.Test +import org.junit.runner.RunWith + +import org.junit.Assert.* + +/** + * Instrumented test, which will execute on an Android device. + * + * See [testing documentation](http://d.android.com/tools/testing). + */ +@RunWith(AndroidJUnit4::class) +class ExampleInstrumentedTest { + @Test + fun useAppContext() { + // Context of the app under test. + val appContext = InstrumentationRegistry.getInstrumentation().targetContext + assertEquals("app.tauri.camera", appContext.packageName) + } +} diff --git a/plugins/camera/android/src/main/AndroidManifest.xml b/plugins/camera/android/src/main/AndroidManifest.xml new file mode 100644 index 00000000..a5918e68 --- /dev/null +++ b/plugins/camera/android/src/main/AndroidManifest.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/plugins/camera/android/src/main/java/app/tauri/camera/CameraBottomSheetDialogFragment.kt b/plugins/camera/android/src/main/java/app/tauri/camera/CameraBottomSheetDialogFragment.kt new file mode 100644 index 00000000..655723b1 --- /dev/null +++ b/plugins/camera/android/src/main/java/app/tauri/camera/CameraBottomSheetDialogFragment.kt @@ -0,0 +1,102 @@ +package app.tauri.camera + +import android.annotation.SuppressLint +import android.app.Dialog +import android.content.DialogInterface +import android.graphics.Color +import android.view.View +import android.widget.LinearLayout +import android.widget.TextView +import androidx.coordinatorlayout.widget.CoordinatorLayout +import com.google.android.material.bottomsheet.BottomSheetBehavior +import com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback +import com.google.android.material.bottomsheet.BottomSheetDialogFragment + +class CameraBottomSheetDialogFragment : BottomSheetDialogFragment() { + fun interface BottomSheetOnSelectedListener { + fun onSelected(index: Int) + } + + fun interface BottomSheetOnCanceledListener { + fun onCanceled() + } + + private var selectedListener: BottomSheetOnSelectedListener? = null + private var canceledListener: BottomSheetOnCanceledListener? = null + private var options: List? = null + private var title: String? = null + fun setTitle(title: String?) { + this.title = title + } + + fun setOptions( + options: List?, + selectedListener: BottomSheetOnSelectedListener, + canceledListener: BottomSheetOnCanceledListener + ) { + this.options = options + this.selectedListener = selectedListener + this.canceledListener = canceledListener + } + + override fun onCancel(dialog: DialogInterface) { + super.onCancel(dialog) + if (canceledListener != null) { + canceledListener!!.onCanceled() + } + } + + private val mBottomSheetBehaviorCallback: BottomSheetCallback = object : BottomSheetCallback() { + override fun onStateChanged(bottomSheet: View, newState: Int) { + if (newState == BottomSheetBehavior.STATE_HIDDEN) { + dismiss() + } + } + + override fun onSlide(bottomSheet: View, slideOffset: Float) {} + } + + @SuppressLint("RestrictedApi") + override fun setupDialog(dialog: Dialog, style: Int) { + super.setupDialog(dialog, style) + if (options == null || options!!.size == 0) { + return + } + val scale = resources.displayMetrics.density + val layoutPaddingDp16 = 16.0f + val layoutPaddingDp12 = 12.0f + val layoutPaddingDp8 = 8.0f + val layoutPaddingPx16 = (layoutPaddingDp16 * scale + 0.5f).toInt() + val layoutPaddingPx12 = (layoutPaddingDp12 * scale + 0.5f).toInt() + val layoutPaddingPx8 = (layoutPaddingDp8 * scale + 0.5f).toInt() + val parentLayout = CoordinatorLayout(requireContext()) + val layout = LinearLayout(context) + layout.orientation = LinearLayout.VERTICAL + layout.setPadding(layoutPaddingPx16, layoutPaddingPx16, layoutPaddingPx16, layoutPaddingPx16) + val ttv = TextView(context) + ttv.setTextColor(Color.parseColor("#757575")) + ttv.setPadding(layoutPaddingPx8, layoutPaddingPx8, layoutPaddingPx8, layoutPaddingPx8) + ttv.text = title + layout.addView(ttv) + for (i in options!!.indices) { + val tv = TextView(context) + tv.setTextColor(Color.parseColor("#000000")) + tv.setPadding(layoutPaddingPx12, layoutPaddingPx12, layoutPaddingPx12, layoutPaddingPx12) + tv.text = options!![i] + tv.setOnClickListener { + if (selectedListener != null) { + selectedListener!!.onSelected(i) + } + dismiss() + } + layout.addView(tv) + } + parentLayout.addView(layout.rootView) + dialog.setContentView(parentLayout.rootView) + val params = (parentLayout.parent as View).layoutParams as CoordinatorLayout.LayoutParams + val behavior = params.behavior + if (behavior != null && behavior is BottomSheetBehavior<*>) { + behavior.addBottomSheetCallback(mBottomSheetBehaviorCallback) + } + } +} diff --git a/plugins/camera/android/src/main/java/app/tauri/camera/CameraPlugin.kt b/plugins/camera/android/src/main/java/app/tauri/camera/CameraPlugin.kt new file mode 100644 index 00000000..ada2984c --- /dev/null +++ b/plugins/camera/android/src/main/java/app/tauri/camera/CameraPlugin.kt @@ -0,0 +1,827 @@ +package app.tauri.camera + +import android.Manifest +import android.app.Activity +import android.content.* +import android.content.pm.PackageManager +import android.content.pm.ResolveInfo +import android.graphics.Bitmap +import android.graphics.BitmapFactory +import android.net.Uri +import android.os.Build +import android.os.Bundle +import android.os.Environment +import android.os.Parcelable +import android.provider.MediaStore +import android.util.Base64 +import androidx.activity.result.ActivityResult +import androidx.appcompat.app.AppCompatActivity +import androidx.core.content.FileProvider +import androidx.exifinterface.media.ExifInterface.* +import app.tauri.* +import app.tauri.annotation.* +import app.tauri.plugin.* +import org.json.JSONException +import java.io.* +import java.util.* +import java.util.concurrent.Executor +import java.util.concurrent.Executors + +enum class CameraSource(val source: String) { + PROMPT("PROMPT"), CAMERA("CAMERA"), PHOTOS("PHOTOS"); +} + +enum class CameraResultType(val type: String) { + BASE64("base64"), URI("uri"), DATAURL("dataUrl"); +} + +class CameraSettings { + var resultType: CameraResultType = CameraResultType.BASE64 + var quality = DEFAULT_QUALITY + var isShouldResize = false + var isShouldCorrectOrientation = DEFAULT_CORRECT_ORIENTATION + var isSaveToGallery = DEFAULT_SAVE_IMAGE_TO_GALLERY + var isAllowEditing = false + var width = 0 + var height = 0 + var source: CameraSource = CameraSource.PROMPT + + companion object { + const val DEFAULT_QUALITY = 90 + const val DEFAULT_SAVE_IMAGE_TO_GALLERY = false + const val DEFAULT_CORRECT_ORIENTATION = true + } +} + +@TauriPlugin( + permissions = [ + Permission(strings = [Manifest.permission.CAMERA], alias = "camera"), + Permission( + strings = [Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE], + alias = "photos" + )] +) +class CameraPlugin(private val activity: Activity): Plugin(activity) { + // Permission alias constants + val CAMERA = "camera" + val PHOTOS = "photos" + + // Message constants + private val INVALID_RESULT_TYPE_ERROR = "Invalid resultType option" + private val PERMISSION_DENIED_ERROR_CAMERA = "User denied access to camera" + private val PERMISSION_DENIED_ERROR_PHOTOS = "User denied access to photos" + private val NO_CAMERA_ERROR = "Device doesn't have a camera available" + private val NO_CAMERA_ACTIVITY_ERROR = "Unable to resolve camera activity" + private val NO_PHOTO_ACTIVITY_ERROR = "Unable to resolve photo activity" + private val IMAGE_FILE_SAVE_ERROR = "Unable to create photo on disk" + private val IMAGE_PROCESS_NO_FILE_ERROR = "Unable to process image, file not found on disk" + private val UNABLE_TO_PROCESS_IMAGE = "Unable to process image" + private val IMAGE_EDIT_ERROR = "Unable to edit image" + private val IMAGE_GALLERY_SAVE_ERROR = "Unable to save the image in the gallery" + + private var imageFileSavePath: String? = null + private var imageEditedFileSavePath: String? = null + private var imageFileUri: Uri? = null + private var imagePickedContentUri: Uri? = null + private var isEdited = false + private var isFirstRequest = true + private var isSaved = false + + private var settings: CameraSettings = CameraSettings() + + @PluginMethod + fun getPhoto(invoke: Invoke) { + isEdited = false + settings = getSettings(invoke) + doShow(invoke) + } + + @PluginMethod + fun pickImages(invoke: Invoke) { + settings = getSettings(invoke) + openPhotos(invoke, multiple = true, skipPermission = false) + } + + @PluginMethod + fun pickLimitedLibraryPhotos(invoke: Invoke) { + invoke.reject("not supported on android") + } + + @PluginMethod + fun getLimitedLibraryPhotos(invoke: Invoke) { + invoke.reject("not supported on android") + } + + private fun doShow(invoke: Invoke) { + when (settings.source) { + CameraSource.CAMERA -> showCamera(invoke) + CameraSource.PHOTOS -> showPhotos(invoke) + else -> showPrompt(invoke) + } + } + + private fun showPrompt(invoke: Invoke) { + // We have all necessary permissions, open the camera + val options: MutableList = ArrayList() + options.add(invoke.getString("promptLabelPhoto", "From Photos")) + options.add(invoke.getString("promptLabelPicture", "Take Picture")) + val fragment = CameraBottomSheetDialogFragment() + fragment.setTitle(invoke.getString("promptLabelHeader", "Photo")) + fragment.setOptions( + options, + { index: Int -> + if (index == 0) { + settings.source = CameraSource.PHOTOS + openPhotos(invoke) + } else if (index == 1) { + settings.source = CameraSource.CAMERA + openCamera(invoke) + } + }, + { invoke.reject("User cancelled photos app") }) + fragment.show((activity as AppCompatActivity).supportFragmentManager, "capacitorModalsActionSheet") + } + + private fun showCamera(invoke: Invoke) { + if (!activity.packageManager.hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY)) { + invoke.reject(NO_CAMERA_ERROR) + return + } + openCamera(invoke) + } + + private fun showPhotos(invoke: Invoke) { + openPhotos(invoke) + } + + private fun checkCameraPermissions(invoke: Invoke): Boolean { + // if the manifest does not contain the camera permissions key, we don't need to ask the user + val needCameraPerms = isPermissionDeclared(CAMERA) + val hasCameraPerms = !needCameraPerms || getPermissionState(CAMERA) === PermissionState.GRANTED + val hasPhotoPerms = getPermissionState(PHOTOS) === PermissionState.GRANTED + + // If we want to save to the gallery, we need two permissions + if (settings.isSaveToGallery && !(hasCameraPerms && hasPhotoPerms) && isFirstRequest) { + isFirstRequest = false + val aliases = if (needCameraPerms) { + arrayOf(CAMERA, PHOTOS) + } else { + arrayOf(PHOTOS) + } + requestPermissionForAliases(aliases, invoke, "cameraPermissionsCallback") + return false + } else if (!hasCameraPerms) { + requestPermissionForAlias(CAMERA, invoke, "cameraPermissionsCallback") + return false + } + return true + } + + private fun checkPhotosPermissions(invoke: Invoke): Boolean { + if (getPermissionState(PHOTOS) !== PermissionState.GRANTED) { + requestPermissionForAlias(PHOTOS, invoke, "cameraPermissionsCallback") + return false + } + return true + } + + /** + * Completes the plugin invoke after a camera permission request + * + * @see .getPhoto + * @param invoke the plugin invoke + */ + @PermissionCallback + private fun cameraPermissionsCallback(invoke: Invoke) { + // TODO: invoke.methodName() + val methodName = "pickImages" + if (methodName == "pickImages") { + openPhotos(invoke, multiple = true, skipPermission = true) + } else { + if (settings.source === CameraSource.CAMERA && getPermissionState(CAMERA) !== PermissionState.GRANTED) { + Logger.debug( + getLogTag(), + "User denied camera permission: " + getPermissionState(CAMERA).toString() + ) + invoke.reject(PERMISSION_DENIED_ERROR_CAMERA) + return + } else if (settings.source === CameraSource.PHOTOS && getPermissionState(PHOTOS) !== PermissionState.GRANTED) { + Logger.debug( + getLogTag(), + "User denied photos permission: " + getPermissionState(PHOTOS).toString() + ) + invoke.reject(PERMISSION_DENIED_ERROR_PHOTOS) + return + } + doShow(invoke) + } + } + + private fun getSettings(invoke: Invoke): CameraSettings { + val settings = CameraSettings() + val resultType = getResultType(invoke.getString("resultType")) + if (resultType != null) { + settings.resultType = resultType + } + settings.isSaveToGallery = + invoke.getBoolean( + "saveToGallery", + CameraSettings.DEFAULT_SAVE_IMAGE_TO_GALLERY + ) + settings.isAllowEditing = invoke.getBoolean("allowEditing", false) + settings.quality = invoke.getInt("quality", CameraSettings.DEFAULT_QUALITY) + settings.width = invoke.getInt("width", 0) + settings.height = invoke.getInt("height", 0) + settings.isShouldResize = settings.width > 0 || settings.height > 0 + settings.isShouldCorrectOrientation = + invoke.getBoolean( + "correctOrientation", + CameraSettings.DEFAULT_CORRECT_ORIENTATION + ) + + try { + settings.source = + CameraSource.valueOf( + invoke.getString( + "source", + CameraSource.PROMPT.source + ) + ) + + } catch (ex: IllegalArgumentException) { + settings.source = CameraSource.PROMPT + } + return settings + } + + private fun getResultType(resultType: String?): CameraResultType? { + return if (resultType == null) { + null + } else try { + CameraResultType.valueOf(resultType.uppercase(Locale.ROOT)) + } catch (ex: IllegalArgumentException) { + Logger.debug(getLogTag(), "Invalid result type \"$resultType\", defaulting to base64") + CameraResultType.BASE64 + } + } + + private fun openCamera(invoke: Invoke) { + if (checkCameraPermissions(invoke)) { + val takePictureIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE) + if (takePictureIntent.resolveActivity(activity.packageManager) != null) { + // If we will be saving the photo, send the target file along + try { + val appId: String = activity.packageName + val photoFile: File = CameraUtils.createImageFile(activity) + imageFileSavePath = photoFile.absolutePath + // TODO: Verify provider config exists + imageFileUri = FileProvider.getUriForFile( + activity, + "$appId.fileprovider", photoFile + ) + takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, imageFileUri) + } catch (ex: Exception) { + invoke.reject(IMAGE_FILE_SAVE_ERROR, ex) + return + } + startActivityForResult(invoke, takePictureIntent, "processCameraImage") + } else { + invoke.reject(NO_CAMERA_ACTIVITY_ERROR) + } + } + } + + private fun openPhotos(invoke: Invoke) { + openPhotos(invoke, multiple = false, skipPermission = false) + } + + private fun openPhotos(invoke: Invoke, multiple: Boolean, skipPermission: Boolean) { + if (skipPermission || checkPhotosPermissions(invoke)) { + val intent = Intent(Intent.ACTION_PICK) + intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, multiple) + intent.setType("image/*") + try { + if (multiple) { + intent.putExtra("multi-pick", multiple) + intent.putExtra(Intent.EXTRA_MIME_TYPES, arrayOf("image/*")) + startActivityForResult(invoke, intent, "processPickedImages") + } else { + startActivityForResult(invoke, intent, "processPickedImage") + } + } catch (ex: ActivityNotFoundException) { + invoke.reject(NO_PHOTO_ACTIVITY_ERROR) + } + } + } + + @ActivityCallback + fun processCameraImage(invoke: Invoke, result: ActivityResult?) { + settings = getSettings(invoke) + if (imageFileSavePath == null) { + invoke.reject(IMAGE_PROCESS_NO_FILE_ERROR) + return + } + // Load the image as a Bitmap + val f = File(imageFileSavePath!!) + val bmOptions: BitmapFactory.Options = BitmapFactory.Options() + val contentUri: Uri = Uri.fromFile(f) + val bitmap: Bitmap = BitmapFactory.decodeFile(imageFileSavePath, bmOptions) + returnResult(invoke, bitmap, contentUri) + } + + @ActivityCallback + fun processPickedImage(invoke: Invoke, result: ActivityResult) { + settings = getSettings(invoke) + val data: Intent? = result.data + if (data == null) { + invoke.reject("No image picked") + return + } + val u: Uri = data.data!! + imagePickedContentUri = u + processPickedImage(u, invoke) + } + + @ActivityCallback + fun processPickedImages(invoke: Invoke, result: ActivityResult) { + val data: Intent? = result.data + if (data != null) { + val executor: Executor = Executors.newSingleThreadExecutor() + executor.execute { + val ret = JSObject() + val photos = JSArray() + if (data.clipData != null) { + val count: Int = data.clipData!!.itemCount + for (i in 0 until count) { + val imageUri: Uri = data.clipData!!.getItemAt(i).uri + val processResult = processPickedImages(imageUri) + if (processResult.getString("error").isNotEmpty() + ) { + invoke.reject(processResult.getString("error")) + return@execute + } else { + photos.put(processResult) + } + } + } else if (data.data != null) { + val imageUri: Uri = data.data!! + val processResult = processPickedImages(imageUri) + if (processResult.getString("error").isNotEmpty() + ) { + invoke.reject(processResult.getString("error")) + return@execute + } else { + photos.put(processResult) + } + } else if (data.extras != null) { + val bundle: Bundle = data.extras!! + if (bundle.keySet().contains("selectedItems")) { + val fileUris: ArrayList? = bundle.getParcelableArrayList("selectedItems") + if (fileUris != null) { + for (fileUri in fileUris) { + if (fileUri is Uri) { + val imageUri: Uri = fileUri + try { + val processResult = processPickedImages(imageUri) + if (processResult.getString("error").isNotEmpty() + ) { + invoke.reject(processResult.getString("error")) + return@execute + } else { + photos.put(processResult) + } + } catch (ex: SecurityException) { + invoke.reject("SecurityException") + } + } + } + } + } + } + ret.put("photos", photos) + invoke.resolve(ret) + } + } else { + invoke.reject("No images picked") + } + } + + private fun processPickedImage(imageUri: Uri, invoke: Invoke) { + var imageStream: InputStream? = null + try { + imageStream = activity.contentResolver.openInputStream(imageUri) + val bitmap = BitmapFactory.decodeStream(imageStream) + if (bitmap == null) { + invoke.reject("Unable to process bitmap") + return + } + returnResult(invoke, bitmap, imageUri) + } catch (err: OutOfMemoryError) { + invoke.reject("Out of memory") + } catch (ex: FileNotFoundException) { + invoke.reject("No such image found", ex) + } finally { + if (imageStream != null) { + try { + imageStream.close() + } catch (e: IOException) { + Logger.error(getLogTag(), UNABLE_TO_PROCESS_IMAGE, e) + } + } + } + } + + private fun processPickedImages(imageUri: Uri): JSObject { + var imageStream: InputStream? = null + val ret = JSObject() + try { + imageStream = activity.contentResolver.openInputStream(imageUri) + var bitmap = BitmapFactory.decodeStream(imageStream) + if (bitmap == null) { + ret.put("error", "Unable to process bitmap") + return ret + } + val exif: ExifWrapper = ImageUtils.getExifData(activity, bitmap, imageUri) + bitmap = try { + prepareBitmap(bitmap, imageUri, exif) + } catch (e: IOException) { + ret.put("error", UNABLE_TO_PROCESS_IMAGE) + return ret + } + // Compress the final image and prepare for output to client + val bitmapOutputStream = ByteArrayOutputStream() + bitmap.compress(Bitmap.CompressFormat.JPEG, settings.quality, bitmapOutputStream) + val newUri: Uri? = getTempImage(imageUri, bitmapOutputStream) + exif.copyExif(newUri?.path) + if (newUri != null) { + ret.put("format", "jpeg") + ret.put("exif", exif.toJson()) + ret.put("data", newUri.toString()) + ret.put("assetUrl", assetUrl(newUri)) + } else { + ret.put("error", UNABLE_TO_PROCESS_IMAGE) + } + return ret + } catch (err: OutOfMemoryError) { + ret.put("error", "Out of memory") + } catch (ex: FileNotFoundException) { + ret.put("error", "No such image found") + Logger.error(getLogTag(), "No such image found", ex) + } finally { + if (imageStream != null) { + try { + imageStream.close() + } catch (e: IOException) { + Logger.error(getLogTag(), UNABLE_TO_PROCESS_IMAGE, e) + } + } + } + return ret + } + + @ActivityCallback + private fun processEditedImage(invoke: Invoke, result: ActivityResult) { + isEdited = true + settings = getSettings(invoke) + if (result.resultCode == Activity.RESULT_CANCELED) { + // User cancelled the edit operation, if this file was picked from photos, + // process the original picked image, otherwise process it as a camera photo + if (imagePickedContentUri != null) { + processPickedImage(imagePickedContentUri!!, invoke) + } else { + processCameraImage(invoke, result) + } + } else { + processPickedImage(invoke, result) + } + } + + /** + * Save the modified image on the same path, + * or on a temporary location if it's a content url + * @param uri + * @param is + * @return + * @throws IOException + */ + @Throws(IOException::class) + private fun saveImage(uri: Uri, input: InputStream): Uri? { + var outFile = if (uri.scheme.equals("content")) { + getTempFile(uri) + } else { + uri.path?.let { File(it) } + } + try { + writePhoto(outFile!!, input) + } catch (ex: FileNotFoundException) { + // Some gallery apps return read only file url, create a temporary file for modifications + outFile = getTempFile(uri) + writePhoto(outFile, input) + } + return Uri.fromFile(outFile) + } + + @Throws(IOException::class) + private fun writePhoto(outFile: File, input: InputStream) { + val fos = FileOutputStream(outFile) + val buffer = ByteArray(1024) + var len: Int + while (input.read(buffer).also { len = it } != -1) { + fos.write(buffer, 0, len) + } + fos.close() + } + + private fun getTempFile(uri: Uri): File { + var filename: String = Uri.parse(Uri.decode(uri.toString())).lastPathSegment!! + if (!filename.contains(".jpg") && !filename.contains(".jpeg")) { + filename += "." + Date().time + ".jpeg" + } + val cacheDir: File = activity.getCacheDir() + return File(cacheDir, filename) + } + + /** + * After processing the image, return the final result back to the invokeer. + * @param invoke + * @param bitmap + * @param u + */ + private fun returnResult(invoke: Invoke, bitmap: Bitmap, u: Uri) { + val exif: ExifWrapper = ImageUtils.getExifData(activity, bitmap, u) + val preparedBitmap = try { + prepareBitmap(bitmap, u, exif) + } catch (e: IOException) { + invoke.reject(UNABLE_TO_PROCESS_IMAGE) + return + } + // Compress the final image and prepare for output to client + val bitmapOutputStream = ByteArrayOutputStream() + preparedBitmap.compress(Bitmap.CompressFormat.JPEG, settings.quality, bitmapOutputStream) + if (settings.isAllowEditing && !isEdited) { + editImage(invoke, u, bitmapOutputStream) + return + } + val saveToGallery: Boolean = + invoke.getBoolean("saveToGallery", CameraSettings.DEFAULT_SAVE_IMAGE_TO_GALLERY) + if (saveToGallery && (imageEditedFileSavePath != null || imageFileSavePath != null)) { + isSaved = true + try { + val fileToSavePath = + if (imageEditedFileSavePath != null) imageEditedFileSavePath!! else imageFileSavePath!! + val fileToSave = File(fileToSavePath) + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) { + val resolver: ContentResolver = activity.contentResolver + val values = ContentValues() + values.put(MediaStore.MediaColumns.DISPLAY_NAME, fileToSave.name) + values.put(MediaStore.MediaColumns.MIME_TYPE, "image/jpeg") + values.put(MediaStore.MediaColumns.RELATIVE_PATH, Environment.DIRECTORY_DCIM) + val contentUri: Uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI + val uri: Uri = resolver.insert(contentUri, values) + ?: throw IOException("Failed to create new MediaStore record.") + val stream: OutputStream = resolver.openOutputStream(uri) + ?: throw IOException("Failed to open output stream.") + val inserted: Boolean = + preparedBitmap.compress(Bitmap.CompressFormat.JPEG, settings.quality, stream) + if (!inserted) { + isSaved = false + } + } else { + val inserted = MediaStore.Images.Media.insertImage( + activity.contentResolver, + fileToSavePath, + fileToSave.name, + "" + ) + if (inserted == null) { + isSaved = false + } + } + } catch (e: FileNotFoundException) { + isSaved = false + Logger.error(getLogTag(), IMAGE_GALLERY_SAVE_ERROR, e) + } catch (e: IOException) { + isSaved = false + Logger.error(getLogTag(), IMAGE_GALLERY_SAVE_ERROR, e) + } + } + if (settings.resultType === CameraResultType.BASE64) { + returnBase64(invoke, exif, bitmapOutputStream) + } else if (settings.resultType === CameraResultType.URI) { + returnFileURI(invoke, exif, bitmap, u, bitmapOutputStream) + } else if (settings.resultType === CameraResultType.DATAURL) { + returnDataUrl(invoke, exif, bitmapOutputStream) + } else { + invoke.reject(INVALID_RESULT_TYPE_ERROR) + } + // Result returned, clear stored paths and images + if (settings.resultType !== CameraResultType.URI) { + deleteImageFile() + } + imageFileSavePath = null + imageFileUri = null + imagePickedContentUri = null + imageEditedFileSavePath = null + } + + private fun deleteImageFile() { + if (imageFileSavePath != null && !settings.isSaveToGallery) { + val photoFile = File(imageFileSavePath!!) + if (photoFile.exists()) { + photoFile.delete() + } + } + } + + private fun returnFileURI( + invoke: Invoke, + exif: ExifWrapper, + bitmap: Bitmap, + u: Uri, + bitmapOutputStream: ByteArrayOutputStream + ) { + val newUri: Uri? = getTempImage(u, bitmapOutputStream) + exif.copyExif(newUri?.path) + if (newUri != null) { + val ret = JSObject() + ret.put("format", "jpeg") + ret.put("exif", exif.toJson()) + ret.put("data", newUri.toString()) + ret.put("assetUrl", assetUrl(newUri)) + ret.put("saved", isSaved) + invoke.resolve(ret) + } else { + invoke.reject(UNABLE_TO_PROCESS_IMAGE) + } + } + + private fun getTempImage(u: Uri, bitmapOutputStream: ByteArrayOutputStream): Uri? { + var bis: ByteArrayInputStream? = null + var newUri: Uri? = null + try { + bis = ByteArrayInputStream(bitmapOutputStream.toByteArray()) + newUri = saveImage(u, bis) + } catch (_: IOException) { + } finally { + if (bis != null) { + try { + bis.close() + } catch (e: IOException) { + Logger.error(getLogTag(), UNABLE_TO_PROCESS_IMAGE, e) + } + } + } + return newUri + } + + /** + * Apply our standard processing of the bitmap, returning a new one and + * recycling the old one in the process + * @param bitmap + * @param imageUri + * @param exif + * @return + */ + @Throws(IOException::class) + private fun prepareBitmap(bitmap: Bitmap, imageUri: Uri, exif: ExifWrapper): Bitmap { + var preparedBitmap: Bitmap = bitmap + if (settings.isShouldCorrectOrientation) { + val newBitmap: Bitmap = ImageUtils.correctOrientation(activity, preparedBitmap, imageUri, exif) + preparedBitmap = replaceBitmap(preparedBitmap, newBitmap) + } + if (settings.isShouldResize) { + val newBitmap: Bitmap = ImageUtils.resize(preparedBitmap, settings.width, settings.height) + preparedBitmap = replaceBitmap(preparedBitmap, newBitmap) + } + return preparedBitmap + } + + private fun replaceBitmap(bitmap: Bitmap, newBitmap: Bitmap): Bitmap { + if (bitmap !== newBitmap) { + bitmap.recycle() + } + return newBitmap + } + + private fun returnDataUrl( + invoke: Invoke, + exif: ExifWrapper, + bitmapOutputStream: ByteArrayOutputStream + ) { + val byteArray: ByteArray = bitmapOutputStream.toByteArray() + val encoded: String = Base64.encodeToString(byteArray, Base64.NO_WRAP) + val data = JSObject() + data.put("format", "jpeg") + data.put("data", "data:image/jpeg;base64,$encoded") + data.put("exif", exif.toJson()) + invoke.resolve(data) + } + + private fun returnBase64( + invoke: Invoke, + exif: ExifWrapper, + bitmapOutputStream: ByteArrayOutputStream + ) { + val byteArray: ByteArray = bitmapOutputStream.toByteArray() + val encoded: String = Base64.encodeToString(byteArray, Base64.NO_WRAP) + val data = JSObject() + data.put("format", "jpeg") + data.put("data", encoded) + data.put("exif", exif.toJson()) + invoke.resolve(data) + } + + @PluginMethod + override fun requestPermissions(invoke: Invoke) { + // If the camera permission is defined in the manifest, then we have to prompt the user + // or else we will get a security exception when trying to present the camera. If, however, + // it is not defined in the manifest then we don't need to prompt and it will just work. + if (isPermissionDeclared(CAMERA)) { + // just request normally + super.requestPermissions(invoke) + } else { + // the manifest does not define camera permissions, so we need to decide what to do + // first, extract the permissions being requested + val providedPerms = invoke.getArray("permissions", JSArray()) + var permsList: List? = null + try { + permsList = providedPerms.toList() + } catch (_: JSONException) { + } + if (permsList != null && permsList.size == 1 && permsList.contains(CAMERA)) { + // the only thing being asked for was the camera so we can just return the current state + checkPermissions(invoke) + } else { + // we need to ask about photos so request storage permissions + requestPermissionForAlias(PHOTOS, invoke, "checkPermissions") + } + } + } + + override fun getPermissionStates(): Map { + val permissionStates = super.getPermissionStates() as MutableMap + + // If Camera is not in the manifest and therefore not required, say the permission is granted + if (!isPermissionDeclared(CAMERA)) { + permissionStates[CAMERA] = PermissionState.GRANTED + } + return permissionStates + } + + private fun editImage(invoke: Invoke, uri: Uri, bitmapOutputStream: ByteArrayOutputStream) { + try { + val tempImage = getTempImage(uri, bitmapOutputStream) + val editIntent = createEditIntent(tempImage) + if (editIntent != null) { + startActivityForResult(invoke, editIntent, "processEditedImage") + } else { + invoke.reject(IMAGE_EDIT_ERROR) + } + } catch (ex: Exception) { + invoke.reject(IMAGE_EDIT_ERROR, ex) + } + } + + private fun createEditIntent(origPhotoUri: Uri?): Intent? { + return try { + val editFile = origPhotoUri?.path?.let { File(it) } + val editUri: Uri = FileProvider.getUriForFile( + activity, + activity.packageName + ".fileprovider", + editFile!! + ) + val editIntent = Intent(Intent.ACTION_EDIT) + editIntent.setDataAndType(editUri, "image/*") + imageEditedFileSavePath = editFile.absolutePath + val flags: Int = + Intent.FLAG_GRANT_READ_URI_PERMISSION or Intent.FLAG_GRANT_WRITE_URI_PERMISSION + editIntent.addFlags(flags) + editIntent.putExtra(MediaStore.EXTRA_OUTPUT, editUri) + val resInfoList: List = activity + .packageManager + .queryIntentActivities(editIntent, PackageManager.MATCH_DEFAULT_ONLY) + for (resolveInfo in resInfoList) { + val packageName: String = resolveInfo.activityInfo.packageName + activity.grantUriPermission(packageName, editUri, flags) + } + editIntent + } catch (ex: Exception) { + null + } + } + + /*protected fun saveInstanceState(): Bundle? { + val bundle: Bundle = super.saveInstanceState() + if (bundle != null) { + bundle.putString("cameraImageFileSavePath", imageFileSavePath) + } + return bundle + } + + protected fun restoreState(state: Bundle) { + val storedImageFileSavePath: String = state.getString("cameraImageFileSavePath") + if (storedImageFileSavePath != null) { + imageFileSavePath = storedImageFileSavePath + } + }*/ +} diff --git a/plugins/camera/android/src/main/java/app/tauri/camera/CameraUtils.kt b/plugins/camera/android/src/main/java/app/tauri/camera/CameraUtils.kt new file mode 100644 index 00000000..76972e3d --- /dev/null +++ b/plugins/camera/android/src/main/java/app/tauri/camera/CameraUtils.kt @@ -0,0 +1,39 @@ +package app.tauri.camera + +import android.app.Activity +import android.net.Uri +import android.os.Environment +import androidx.core.content.FileProvider +import app.tauri.Logger +import java.io.File +import java.io.IOException +import java.text.SimpleDateFormat +import java.util.* + +object CameraUtils { + @Throws(IOException::class) + fun createImageFileUri(activity: Activity, appId: String): Uri { + val photoFile = createImageFile(activity) + return FileProvider.getUriForFile( + activity, + "$appId.fileprovider", photoFile + ) + } + + @Throws(IOException::class) + fun createImageFile(activity: Activity): File { + // Create an image file name + val timeStamp: String = SimpleDateFormat("yyyyMMdd_HHmmss").format(Date()) + val imageFileName = "JPEG_" + timeStamp + "_" + val storageDir = + activity.getExternalFilesDir(Environment.DIRECTORY_PICTURES) + return File.createTempFile( + imageFileName, /* prefix */ + ".jpg", /* suffix */ + storageDir /* directory */ + ) + } + + internal val logTag: String + internal get() = Logger.tags("CameraUtils") +} diff --git a/plugins/camera/android/src/main/java/app/tauri/camera/ExifWrapper.kt b/plugins/camera/android/src/main/java/app/tauri/camera/ExifWrapper.kt new file mode 100644 index 00000000..1ef69ef4 --- /dev/null +++ b/plugins/camera/android/src/main/java/app/tauri/camera/ExifWrapper.kt @@ -0,0 +1,198 @@ +package app.tauri.camera + +import androidx.exifinterface.media.ExifInterface.* +import androidx.exifinterface.media.ExifInterface +import app.tauri.plugin.JSObject + +class ExifWrapper(private val exif: ExifInterface?) { + private val attributes = arrayOf( + TAG_APERTURE_VALUE, + TAG_ARTIST, + TAG_BITS_PER_SAMPLE, + TAG_BODY_SERIAL_NUMBER, + TAG_BRIGHTNESS_VALUE, + TAG_CAMERA_OWNER_NAME, + TAG_CFA_PATTERN, + TAG_COLOR_SPACE, + TAG_COMPONENTS_CONFIGURATION, + TAG_COMPRESSED_BITS_PER_PIXEL, + TAG_COMPRESSION, + TAG_CONTRAST, + TAG_COPYRIGHT, + TAG_CUSTOM_RENDERED, + TAG_DATETIME, + TAG_DATETIME_DIGITIZED, + TAG_DATETIME_ORIGINAL, + TAG_DEFAULT_CROP_SIZE, + TAG_DEVICE_SETTING_DESCRIPTION, + TAG_DIGITAL_ZOOM_RATIO, + TAG_DNG_VERSION, + TAG_EXIF_VERSION, + TAG_EXPOSURE_BIAS_VALUE, + TAG_EXPOSURE_INDEX, + TAG_EXPOSURE_MODE, + TAG_EXPOSURE_PROGRAM, + TAG_EXPOSURE_TIME, + TAG_FILE_SOURCE, + TAG_FLASH, + TAG_FLASHPIX_VERSION, + TAG_FLASH_ENERGY, + TAG_FOCAL_LENGTH, + TAG_FOCAL_LENGTH_IN_35MM_FILM, + TAG_FOCAL_PLANE_RESOLUTION_UNIT, + TAG_FOCAL_PLANE_X_RESOLUTION, + TAG_FOCAL_PLANE_Y_RESOLUTION, + TAG_F_NUMBER, + TAG_GAIN_CONTROL, + TAG_GAMMA, + TAG_GPS_ALTITUDE, + TAG_GPS_ALTITUDE_REF, + TAG_GPS_AREA_INFORMATION, + TAG_GPS_DATESTAMP, + TAG_GPS_DEST_BEARING, + TAG_GPS_DEST_BEARING_REF, + TAG_GPS_DEST_DISTANCE, + TAG_GPS_DEST_DISTANCE_REF, + TAG_GPS_DEST_LATITUDE, + TAG_GPS_DEST_LATITUDE_REF, + TAG_GPS_DEST_LONGITUDE, + TAG_GPS_DEST_LONGITUDE_REF, + TAG_GPS_DIFFERENTIAL, + TAG_GPS_DOP, + TAG_GPS_H_POSITIONING_ERROR, + TAG_GPS_IMG_DIRECTION, + TAG_GPS_IMG_DIRECTION_REF, + TAG_GPS_LATITUDE, + TAG_GPS_LATITUDE_REF, + TAG_GPS_LONGITUDE, + TAG_GPS_LONGITUDE_REF, + TAG_GPS_MAP_DATUM, + TAG_GPS_MEASURE_MODE, + TAG_GPS_PROCESSING_METHOD, + TAG_GPS_SATELLITES, + TAG_GPS_SPEED, + TAG_GPS_SPEED_REF, + TAG_GPS_STATUS, + TAG_GPS_TIMESTAMP, + TAG_GPS_TRACK, + TAG_GPS_TRACK_REF, + TAG_GPS_VERSION_ID, + TAG_IMAGE_DESCRIPTION, + TAG_IMAGE_LENGTH, + TAG_IMAGE_UNIQUE_ID, + TAG_IMAGE_WIDTH, + TAG_INTEROPERABILITY_INDEX, + TAG_ISO_SPEED, + TAG_ISO_SPEED_LATITUDE_YYY, + TAG_ISO_SPEED_LATITUDE_ZZZ, + TAG_JPEG_INTERCHANGE_FORMAT, + TAG_JPEG_INTERCHANGE_FORMAT_LENGTH, + TAG_LENS_MAKE, + TAG_LENS_MODEL, + TAG_LENS_SERIAL_NUMBER, + TAG_LENS_SPECIFICATION, + TAG_LIGHT_SOURCE, + TAG_MAKE, + TAG_MAKER_NOTE, + TAG_MAX_APERTURE_VALUE, + TAG_METERING_MODE, + TAG_MODEL, + TAG_NEW_SUBFILE_TYPE, + TAG_OECF, + TAG_OFFSET_TIME, + TAG_OFFSET_TIME_DIGITIZED, + TAG_OFFSET_TIME_ORIGINAL, + TAG_ORF_ASPECT_FRAME, + TAG_ORF_PREVIEW_IMAGE_LENGTH, + TAG_ORF_PREVIEW_IMAGE_START, + TAG_ORF_THUMBNAIL_IMAGE, + TAG_ORIENTATION, + TAG_PHOTOGRAPHIC_SENSITIVITY, + TAG_PHOTOMETRIC_INTERPRETATION, + TAG_PIXEL_X_DIMENSION, + TAG_PIXEL_Y_DIMENSION, + TAG_PLANAR_CONFIGURATION, + TAG_PRIMARY_CHROMATICITIES, + TAG_RECOMMENDED_EXPOSURE_INDEX, + TAG_REFERENCE_BLACK_WHITE, + TAG_RELATED_SOUND_FILE, + TAG_RESOLUTION_UNIT, + TAG_ROWS_PER_STRIP, + TAG_RW2_ISO, + TAG_RW2_JPG_FROM_RAW, + TAG_RW2_SENSOR_BOTTOM_BORDER, + TAG_RW2_SENSOR_LEFT_BORDER, + TAG_RW2_SENSOR_RIGHT_BORDER, + TAG_RW2_SENSOR_TOP_BORDER, + TAG_SAMPLES_PER_PIXEL, + TAG_SATURATION, + TAG_SCENE_CAPTURE_TYPE, + TAG_SCENE_TYPE, + TAG_SENSING_METHOD, + TAG_SENSITIVITY_TYPE, + TAG_SHARPNESS, + TAG_SHUTTER_SPEED_VALUE, + TAG_SOFTWARE, + TAG_SPATIAL_FREQUENCY_RESPONSE, + TAG_SPECTRAL_SENSITIVITY, + TAG_STANDARD_OUTPUT_SENSITIVITY, + TAG_STRIP_BYTE_COUNTS, + TAG_STRIP_OFFSETS, + TAG_SUBFILE_TYPE, + TAG_SUBJECT_AREA, + TAG_SUBJECT_DISTANCE, + TAG_SUBJECT_DISTANCE_RANGE, + TAG_SUBJECT_LOCATION, + TAG_SUBSEC_TIME, + TAG_SUBSEC_TIME_DIGITIZED, + TAG_SUBSEC_TIME_ORIGINAL, + TAG_THUMBNAIL_IMAGE_LENGTH, + TAG_THUMBNAIL_IMAGE_WIDTH, + TAG_TRANSFER_FUNCTION, + TAG_USER_COMMENT, + TAG_WHITE_BALANCE, + TAG_WHITE_POINT, + TAG_XMP, + TAG_X_RESOLUTION, + TAG_Y_CB_CR_COEFFICIENTS, + TAG_Y_CB_CR_POSITIONING, + TAG_Y_CB_CR_SUB_SAMPLING, + TAG_Y_RESOLUTION + ) + + fun toJson(): JSObject { + val ret = JSObject() + if (exif == null) { + return ret + } + for (i in attributes.indices) { + p(ret, attributes[i]) + } + return ret + } + + fun p(o: JSObject, tag: String?) { + val value = exif!!.getAttribute(tag!!) + o.put(tag, value) + } + + fun copyExif(destFile: String?) { + try { + val destExif = ExifInterface( + destFile!! + ) + for (i in attributes.indices) { + val value = exif!!.getAttribute(attributes[i]) + if (value != null) { + destExif.setAttribute(attributes[i], value) + } + } + destExif.saveAttributes() + } catch (_: java.lang.Exception) { + } + } + + fun resetOrientation() { + exif!!.resetOrientation() + } +} diff --git a/plugins/camera/android/src/main/java/app/tauri/camera/ImageUtils.kt b/plugins/camera/android/src/main/java/app/tauri/camera/ImageUtils.kt new file mode 100644 index 00000000..b6369cf2 --- /dev/null +++ b/plugins/camera/android/src/main/java/app/tauri/camera/ImageUtils.kt @@ -0,0 +1,126 @@ +package app.tauri.camera + +import android.content.Context +import android.graphics.Bitmap +import android.graphics.Matrix +import android.net.Uri +import androidx.exifinterface.media.ExifInterface +import app.tauri.Logger +import java.io.IOException +import java.io.InputStream +import java.lang.Integer.min +import kotlin.math.roundToInt + +object ImageUtils { + /** + * Resize an image to the given max width and max height. Constraint can be put + * on one dimension, or both. Resize will always preserve aspect ratio. + * @param bitmap + * @param desiredMaxWidth + * @param desiredMaxHeight + * @return a new, scaled Bitmap + */ + fun resize(bitmap: Bitmap, desiredMaxWidth: Int, desiredMaxHeight: Int): Bitmap { + return resizePreservingAspectRatio(bitmap, desiredMaxWidth, desiredMaxHeight) + } + + /** + * Resize an image to the given max width and max height. Constraint can be put + * on one dimension, or both. Resize will always preserve aspect ratio. + * @param bitmap + * @param desiredMaxWidth + * @param desiredMaxHeight + * @return a new, scaled Bitmap + */ + private fun resizePreservingAspectRatio( + bitmap: Bitmap, + desiredMaxWidth: Int, + desiredMaxHeight: Int + ): Bitmap { + val width = bitmap.width + val height = bitmap.height + + // 0 is treated as 'no restriction' + val maxHeight = if (desiredMaxHeight == 0) height else desiredMaxHeight + val maxWidth = if (desiredMaxWidth == 0) width else desiredMaxWidth + + // resize with preserved aspect ratio + var newWidth = min(width, maxWidth).toFloat() + var newHeight = height * newWidth / width + if (newHeight > maxHeight) { + newWidth = (width * maxHeight / height).toFloat() + newHeight = maxHeight.toFloat() + } + return Bitmap.createScaledBitmap(bitmap, newWidth.roundToInt(), newHeight.roundToInt(), false) + } + + /** + * Transform an image with the given matrix + * @param bitmap + * @param matrix + * @return + */ + private fun transform(bitmap: Bitmap, matrix: Matrix): Bitmap { + return Bitmap.createBitmap(bitmap, 0, 0, bitmap.width, bitmap.height, matrix, true) + } + + /** + * Correct the orientation of an image by reading its exif information and rotating + * the appropriate amount for portrait mode + * @param bitmap + * @param imageUri + * @param exif + * @return + */ + @Throws(IOException::class) + fun correctOrientation(c: Context, bitmap: Bitmap, imageUri: Uri, exif: ExifWrapper): Bitmap { + val orientation = getOrientation(c, imageUri) + return if (orientation != 0) { + val matrix = Matrix() + matrix.postRotate(orientation.toFloat()) + exif.resetOrientation() + transform(bitmap, matrix) + } else { + bitmap + } + } + + @Throws(IOException::class) + private fun getOrientation(c: Context, imageUri: Uri): Int { + var result = 0 + c.getContentResolver().openInputStream(imageUri).use { iStream -> + val exifInterface = ExifInterface(iStream!!) + val orientation: Int = exifInterface.getAttributeInt( + ExifInterface.TAG_ORIENTATION, + ExifInterface.ORIENTATION_NORMAL + ) + if (orientation == ExifInterface.ORIENTATION_ROTATE_90) { + result = 90 + } else if (orientation == ExifInterface.ORIENTATION_ROTATE_180) { + result = 180 + } else if (orientation == ExifInterface.ORIENTATION_ROTATE_270) { + result = 270 + } + } + return result + } + + fun getExifData(c: Context, bitmap: Bitmap?, imageUri: Uri): ExifWrapper { + var stream: InputStream? = null + try { + stream = c.getContentResolver().openInputStream(imageUri) + val exifInterface = ExifInterface(stream!!) + return ExifWrapper(exifInterface) + } catch (ex: IOException) { + Logger.error("Error loading exif data from image", ex) + } finally { + if (stream != null) { + try { + stream.close() + } catch (ignored: IOException) { + } + } + } + return ExifWrapper(null) + } +} diff --git a/plugins/camera/android/src/test/java/app/tauri/camera/ExampleUnitTest.kt b/plugins/camera/android/src/test/java/app/tauri/camera/ExampleUnitTest.kt new file mode 100644 index 00000000..7547c0b3 --- /dev/null +++ b/plugins/camera/android/src/test/java/app/tauri/camera/ExampleUnitTest.kt @@ -0,0 +1,17 @@ +package app.tauri.camera + +import org.junit.Test + +import org.junit.Assert.* + +/** + * Example local unit test, which will execute on the development machine (host). + * + * See [testing documentation](http://d.android.com/tools/testing). + */ +class ExampleUnitTest { + @Test + fun addition_isCorrect() { + assertEquals(4, 2 + 2) + } +} diff --git a/plugins/camera/build.rs b/plugins/camera/build.rs new file mode 100644 index 00000000..6a5bcf5d --- /dev/null +++ b/plugins/camera/build.rs @@ -0,0 +1,16 @@ +// Copyright 2019-2022 Tauri Programme within The Commons Conservancy +// SPDX-License-Identifier: Apache-2.0 +// SPDX-License-Identifier: MIT + +use std::process::exit; + +fn main() { + if let Err(error) = tauri_build::mobile::PluginBuilder::new() + .android_path("android") + .ios_path("ios") + .run() + { + println!("{error:#}"); + exit(1); + } +} diff --git a/plugins/camera/examples/tauri-app/.gitignore b/plugins/camera/examples/tauri-app/.gitignore new file mode 100644 index 00000000..a547bf36 --- /dev/null +++ b/plugins/camera/examples/tauri-app/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/plugins/camera/examples/tauri-app/README.md b/plugins/camera/examples/tauri-app/README.md new file mode 100644 index 00000000..21592436 --- /dev/null +++ b/plugins/camera/examples/tauri-app/README.md @@ -0,0 +1 @@ +# Camera Example diff --git a/plugins/camera/examples/tauri-app/index.html b/plugins/camera/examples/tauri-app/index.html new file mode 100644 index 00000000..fad1c5d9 --- /dev/null +++ b/plugins/camera/examples/tauri-app/index.html @@ -0,0 +1,14 @@ + + + + + + + Tauri + Svelte + + + +
+ + + diff --git a/plugins/camera/examples/tauri-app/jsconfig.json b/plugins/camera/examples/tauri-app/jsconfig.json new file mode 100644 index 00000000..ee5e92f2 --- /dev/null +++ b/plugins/camera/examples/tauri-app/jsconfig.json @@ -0,0 +1,34 @@ +{ + "compilerOptions": { + "moduleResolution": "Node", + "target": "ESNext", + "module": "ESNext", + /** + * svelte-preprocess cannot figure out whether you have + * a value or a type, so tell TypeScript to enforce using + * `import type` instead of `import` for Types. + */ + "importsNotUsedAsValues": "error", + "isolatedModules": true, + "resolveJsonModule": true, + /** + * To have warnings / errors of the Svelte compiler at the + * correct position, enable source maps by default. + */ + "sourceMap": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "baseUrl": ".", + /** + * Typecheck JS in `.svelte` and `.js` files by default. + * Disable this if you'd like to use dynamic types. + */ + "checkJs": true + }, + /** + * Use global.d.ts instead of compilerOptions.types + * to avoid limiting type declarations. + */ + "include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.svelte"] +} diff --git a/plugins/camera/examples/tauri-app/package.json b/plugins/camera/examples/tauri-app/package.json new file mode 100644 index 00000000..a6cc8e02 --- /dev/null +++ b/plugins/camera/examples/tauri-app/package.json @@ -0,0 +1,23 @@ +{ + "name": "tauri-app", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview", + "tauri": "tauri" + }, + "dependencies": { + "@tauri-apps/api": "^1.1.0", + "tauri-plugin-camera-api": "link:../../" + }, + "devDependencies": { + "@sveltejs/vite-plugin-svelte": "^1.0.1", + "@tauri-apps/cli": "^2.0.0-alpha.0", + "internal-ip": "^7.0.0", + "svelte": "^3.49.0", + "vite": "^3.0.2" + } +} diff --git a/plugins/camera/examples/tauri-app/src-tauri/.gitignore b/plugins/camera/examples/tauri-app/src-tauri/.gitignore new file mode 100644 index 00000000..c055de2d --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/.gitignore @@ -0,0 +1,5 @@ +# Generated by Cargo +# will have compiled files and executables +/target/ + +.cargo diff --git a/plugins/camera/examples/tauri-app/src-tauri/Cargo.lock b/plugins/camera/examples/tauri-app/src-tauri/Cargo.lock new file mode 100644 index 00000000..13a0a9d5 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/Cargo.lock @@ -0,0 +1,3515 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "aho-corasick" +version = "0.7.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" +dependencies = [ + "memchr", +] + +[[package]] +name = "alloc-no-stdlib" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +dependencies = [ + "alloc-no-stdlib", +] + +[[package]] +name = "anyhow" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800" + +[[package]] +name = "app" +version = "0.0.0" +dependencies = [ + "serde", + "serde_json", + "tauri", + "tauri-build", + "tauri-plugin-camera", +] + +[[package]] +name = "atk" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39991bc421ddf72f70159011b323ff49b0f783cc676a7287c59453da2e2531cf" +dependencies = [ + "atk-sys", + "bitflags", + "glib", + "libc", +] + +[[package]] +name = "atk-sys" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11ad703eb64dc058024f0e57ccfa069e15a413b98dbd50a1a950e743b7f11148" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "attohttpc" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d9a9bf8b79a749ee0b911b91b671cc2b6c670bdbc7e3dfd537576ddc94bb2a2" +dependencies = [ + "flate2", + "http", + "log", + "serde", + "serde_json", + "serde_urlencoded", + "url", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "block" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a" + +[[package]] +name = "block-buffer" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e" +dependencies = [ + "generic-array", +] + +[[package]] +name = "brotli" +version = "3.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "2.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b6561fd3f895a11e8f72af2cb7d22e08366bebc2b6b57f7744c4bda27034744" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + +[[package]] +name = "bstr" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7f0778972c64420fdedc63f09919c8a88bda7b25135357fd25a5d9f3257e832" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "bumpalo" +version = "3.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" + +[[package]] +name = "bytemuck" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c041d3eab048880cb0b86b256447da3f18859a163c3b8d8893f4e6368abe6393" + +[[package]] +name = "byteorder" +version = "1.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" + +[[package]] +name = "bytes" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" + +[[package]] +name = "cairo-rs" +version = "0.16.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3125b15ec28b84c238f6f476c6034016a5f6cc0221cb514ca46c532139fc97d" +dependencies = [ + "bitflags", + "cairo-sys-rs", + "glib", + "libc", + "once_cell", + "thiserror", +] + +[[package]] +name = "cairo-sys-rs" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c48f4af05fabdcfa9658178e1326efa061853f040ce7d72e33af6885196f421" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "cargo_toml" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bfbc36312494041e2cdd5f06697b7e89d4b76f42773a0b5556ac290ff22acc2" +dependencies = [ + "serde", + "toml", +] + +[[package]] +name = "cc" +version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cfb" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f" +dependencies = [ + "byteorder", + "fnv", + "uuid", +] + +[[package]] +name = "cfg-expr" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0357a6402b295ca3a86bc148e84df46c02e41f41fef186bda662557ef6328aa" +dependencies = [ + "smallvec", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "cocoa" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a" +dependencies = [ + "bitflags", + "block", + "cocoa-foundation", + "core-foundation", + "core-graphics", + "foreign-types", + "libc", + "objc", +] + +[[package]] +name = "cocoa-foundation" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ade49b65d560ca58c403a479bb396592b155c0185eada742ee323d1d68d6318" +dependencies = [ + "bitflags", + "block", + "core-foundation", + "core-graphics-types", + "foreign-types", + "libc", + "objc", +] + +[[package]] +name = "color_quant" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" + +[[package]] +name = "combine" +version = "4.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "convert_case" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" + +[[package]] +name = "core-foundation" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" + +[[package]] +name = "core-graphics" +version = "0.22.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" +dependencies = [ + "bitflags", + "core-foundation", + "core-graphics-types", + "foreign-types", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" +dependencies = [ + "bitflags", + "core-foundation", + "foreign-types", + "libc", +] + +[[package]] +name = "cpufeatures" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320" +dependencies = [ + "libc", +] + +[[package]] +name = "crc32fast" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "cssparser" +version = "0.27.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a" +dependencies = [ + "cssparser-macros", + "dtoa-short", + "itoa 0.4.8", + "matches", + "phf 0.8.0", + "proc-macro2", + "quote", + "smallvec", + "syn", +] + +[[package]] +name = "cssparser-macros" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfae75de57f2b2e85e8768c3ea840fd159c8f33e2b6522c7835b7abac81be16e" +dependencies = [ + "quote", + "syn", +] + +[[package]] +name = "ctor" +version = "0.1.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096" +dependencies = [ + "quote", + "syn", +] + +[[package]] +name = "cty" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b365fabc795046672053e29c954733ec3b05e4be654ab130fe8f1f94d7051f35" + +[[package]] +name = "darling" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn", +] + +[[package]] +name = "darling_macro" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" +dependencies = [ + "darling_core", + "quote", + "syn", +] + +[[package]] +name = "dbus" +version = "0.9.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b" +dependencies = [ + "libc", + "libdbus-sys", + "winapi", +] + +[[package]] +name = "derive_more" +version = "0.99.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "rustc_version 0.4.0", + "syn", +] + +[[package]] +name = "digest" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "dirs-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +dependencies = [ + "cfg-if", + "dirs-sys-next", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + +[[package]] +name = "dispatch" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b" + +[[package]] +name = "dtoa" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" + +[[package]] +name = "dtoa-short" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bde03329ae10e79ede66c9ce4dc930aa8599043b0743008548680f25b91502d6" +dependencies = [ + "dtoa", +] + +[[package]] +name = "dunce" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bd4b30a6560bbd9b4620f4de34c3f14f60848e58a9b7216801afcb4c7b31c3c" + +[[package]] +name = "embed_plist" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7" + +[[package]] +name = "encoding_rs" +version = "0.8.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "field-offset" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92" +dependencies = [ + "memoffset", + "rustc_version 0.3.3", +] + +[[package]] +name = "filetime" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "windows-sys 0.45.0", +] + +[[package]] +name = "flate2" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futf" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843" +dependencies = [ + "mac", + "new_debug_unreachable", +] + +[[package]] +name = "futures-channel" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e5317663a9089767a1ec00a487df42e0ca174b61b4483213ac24448e4664df5" +dependencies = [ + "futures-core", +] + +[[package]] +name = "futures-core" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec90ff4d0fe1f57d600049061dc6bb68ed03c7d2fbd697274c41805dcb3f8608" + +[[package]] +name = "futures-executor" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8de0a35a6ab97ec8869e32a2473f4b1324459e14c29275d14b10cb1fd19b50e" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfb8371b6fb2aeb2d280374607aeabfc99d95c72edfe51692e42d3d7f0d08531" + +[[package]] +name = "futures-macro" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95a73af87da33b5acf53acfebdc339fe592ecf5357ac7c0a7734ab9d8c876a70" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "futures-task" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcf79a1bf610b10f42aea489289c5a2c478a786509693b80cd39c44ccd936366" + +[[package]] +name = "futures-util" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c1d6de3acfef38d2be4b1f543f553131788603495be83da675e180c8d6b7bd1" +dependencies = [ + "futures-core", + "futures-macro", + "futures-task", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + +[[package]] +name = "gdk" +version = "0.16.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa9cb33da481c6c040404a11f8212d193889e9b435db2c14fd86987f630d3ce1" +dependencies = [ + "bitflags", + "cairo-rs", + "gdk-pixbuf", + "gdk-sys", + "gio", + "glib", + "libc", + "pango", +] + +[[package]] +name = "gdk-pixbuf" +version = "0.16.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3578c60dee9d029ad86593ed88cb40f35c1b83360e12498d055022385dd9a05" +dependencies = [ + "bitflags", + "gdk-pixbuf-sys", + "gio", + "glib", + "libc", +] + +[[package]] +name = "gdk-pixbuf-sys" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3092cf797a5f1210479ea38070d9ae8a5b8e9f8f1be9f32f4643c529c7d70016" +dependencies = [ + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "gdk-sys" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d76354f97a913e55b984759a997b693aa7dc71068c9e98bcce51aa167a0a5c5a" +dependencies = [ + "cairo-sys-rs", + "gdk-pixbuf-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "pango-sys", + "pkg-config", + "system-deps", +] + +[[package]] +name = "gdkwayland-sys" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4511710212ed3020b61a8622a37aa6f0dd2a84516575da92e9b96928dcbe83ba" +dependencies = [ + "gdk-sys", + "glib-sys", + "gobject-sys", + "libc", + "pkg-config", + "system-deps", +] + +[[package]] +name = "gdkx11-sys" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fa2bf8b5b8c414bc5d05e48b271896d0fd3ddb57464a3108438082da61de6af" +dependencies = [ + "gdk-sys", + "glib-sys", + "libc", + "system-deps", + "x11", +] + +[[package]] +name = "generator" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d266041a359dfa931b370ef684cceb84b166beb14f7f0421f4a6a3d0c446d12e" +dependencies = [ + "cc", + "libc", + "log", + "rustversion", + "windows 0.39.0", +] + +[[package]] +name = "generic-array" +version = "0.14.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", +] + +[[package]] +name = "gio" +version = "0.16.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a1c84b4534a290a29160ef5c6eff2a9c95833111472e824fc5cb78b513dd092" +dependencies = [ + "bitflags", + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "gio-sys", + "glib", + "libc", + "once_cell", + "pin-project-lite", + "smallvec", + "thiserror", +] + +[[package]] +name = "gio-sys" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9b693b8e39d042a95547fc258a7b07349b1f0b48f4b2fa3108ba3c51c0b5229" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", + "winapi", +] + +[[package]] +name = "glib" +version = "0.16.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd4df61a866ed7259d6189b8bcb1464989a77f1d85d25d002279bbe9dd38b2f" +dependencies = [ + "bitflags", + "futures-channel", + "futures-core", + "futures-executor", + "futures-task", + "futures-util", + "gio-sys", + "glib-macros", + "glib-sys", + "gobject-sys", + "libc", + "once_cell", + "smallvec", + "thiserror", +] + +[[package]] +name = "glib-macros" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e084807350b01348b6d9dbabb724d1a0bb987f47a2c85de200e98e12e30733bf" +dependencies = [ + "anyhow", + "heck 0.4.1", + "proc-macro-crate", + "proc-macro-error", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "glib-sys" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61a4f46316d06bfa33a7ac22df6f0524c8be58e3db2d9ca99ccb1f357b62a65" +dependencies = [ + "libc", + "system-deps", +] + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "globset" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc" +dependencies = [ + "aho-corasick", + "bstr", + "fnv", + "log", + "regex", +] + +[[package]] +name = "gobject-sys" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3520bb9c07ae2a12c7f2fbb24d4efc11231c8146a86956413fb1a79bb760a0f1" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "gtk" +version = "0.16.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4d3507d43908c866c805f74c9dd593c0ce7ba5c38e576e41846639cdcd4bee6" +dependencies = [ + "atk", + "bitflags", + "cairo-rs", + "field-offset", + "futures-channel", + "gdk", + "gdk-pixbuf", + "gio", + "glib", + "gtk-sys", + "gtk3-macros", + "libc", + "once_cell", + "pango", + "pkg-config", +] + +[[package]] +name = "gtk-sys" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89b5f8946685d5fe44497007786600c2f368ff6b1e61a16251c89f72a97520a3" +dependencies = [ + "atk-sys", + "cairo-sys-rs", + "gdk-pixbuf-sys", + "gdk-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "pango-sys", + "system-deps", +] + +[[package]] +name = "gtk3-macros" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cfd6557b1018b773e43c8de9d0d13581d6b36190d0501916cbec4731db5ccff" +dependencies = [ + "anyhow", + "proc-macro-crate", + "proc-macro-error", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "heck" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "hermit-abi" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7" +dependencies = [ + "libc", +] + +[[package]] +name = "html5ever" +version = "0.25.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5c13fb08e5d4dfc151ee5e88bae63f7773d61852f3bdc73c9f4b9e1bde03148" +dependencies = [ + "log", + "mac", + "markup5ever", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "http" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482" +dependencies = [ + "bytes", + "fnv", + "itoa 1.0.5", +] + +[[package]] +name = "http-range" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573" + +[[package]] +name = "ico" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3804960be0bb5e4edb1e1ad67afd321a9ecfd875c3e65c099468fd2717d7cae" +dependencies = [ + "byteorder", + "png", +] + +[[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.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "ignore" +version = "0.4.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "713f1b139373f96a2e0ce3ac931cd01ee973c3c5dd7c40c0c2efe96ad2b6751d" +dependencies = [ + "crossbeam-utils", + "globset", + "lazy_static", + "log", + "memchr", + "regex", + "same-file", + "thread_local", + "walkdir", + "winapi-util", +] + +[[package]] +name = "image" +version = "0.24.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69b7ea949b537b0fd0af141fff8c77690f2ce96f4f41f042ccb6c69c6c965945" +dependencies = [ + "bytemuck", + "byteorder", + "color_quant", + "num-rational", + "num-traits", +] + +[[package]] +name = "indexmap" +version = "1.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" +dependencies = [ + "autocfg", + "hashbrown", +] + +[[package]] +name = "infer" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a898e4b7951673fce96614ce5751d13c40fc5674bc2d759288e46c3ab62598b3" +dependencies = [ + "cfb", +] + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "itoa" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" + +[[package]] +name = "itoa" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fad582f4b9e86b6caa621cabeb0963332d92eea04729ab12892c2533951e6440" + +[[package]] +name = "javascriptcore-rs" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "110b9902c80c12bf113c432d0b71c7a94490b294a8234f326fd0abca2fac0b00" +dependencies = [ + "bitflags", + "glib", + "javascriptcore-rs-sys", +] + +[[package]] +name = "javascriptcore-rs-sys" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98a216519a52cd941a733a0ad3f1023cfdb1cd47f3955e8e863ed56f558f916c" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "jni" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c" +dependencies = [ + "cesu8", + "combine", + "jni-sys", + "log", + "thiserror", + "walkdir", +] + +[[package]] +name = "jni-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" + +[[package]] +name = "js-sys" +version = "0.3.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "445dde2150c55e483f3d8416706b97ec8e8237c307e5b7b4b8dd15e6af2a0730" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "json-patch" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e712e62827c382a77b87f590532febb1f8b2fdbc3eefa1ee37fe7281687075ef" +dependencies = [ + "serde", + "serde_json", + "thiserror", + "treediff", +] + +[[package]] +name = "kuchiki" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ea8e9c6e031377cff82ee3001dc8026cdf431ed4e2e6b51f98ab8c73484a358" +dependencies = [ + "cssparser", + "html5ever", + "matches", + "selectors", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + +[[package]] +name = "libc" +version = "0.2.139" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79" + +[[package]] +name = "libdbus-sys" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f8d7ae751e1cb825c840ae5e682f59b098cdfd213c350ac268b61449a5f58a0" +dependencies = [ + "pkg-config", +] + +[[package]] +name = "line-wrap" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9" +dependencies = [ + "safemem", +] + +[[package]] +name = "lock_api" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "loom" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff50ecb28bb86013e935fb6683ab1f6d3a20016f123c76fd4c27470076ac30f5" +dependencies = [ + "cfg-if", + "generator", + "scoped-tls", + "serde", + "serde_json", + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "mac" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4" + +[[package]] +name = "mac-notification-sys" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e72d50edb17756489e79d52eb146927bec8eba9dd48faadf9ef08bca3791ad5" +dependencies = [ + "cc", + "dirs-next", + "objc-foundation", + "objc_id", + "time", +] + +[[package]] +name = "malloc_buf" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb" +dependencies = [ + "libc", +] + +[[package]] +name = "markup5ever" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd" +dependencies = [ + "log", + "phf 0.8.0", + "phf_codegen", + "string_cache", + "string_cache_codegen", + "tendril", +] + +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata", +] + +[[package]] +name = "matches" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" + +[[package]] +name = "memchr" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" + +[[package]] +name = "memoffset" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" +dependencies = [ + "autocfg", +] + +[[package]] +name = "miniz_oxide" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +dependencies = [ + "adler", +] + +[[package]] +name = "ndk" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4" +dependencies = [ + "bitflags", + "jni-sys", + "ndk-sys", + "num_enum", + "thiserror", +] + +[[package]] +name = "ndk-context" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" + +[[package]] +name = "ndk-sys" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97" +dependencies = [ + "jni-sys", +] + +[[package]] +name = "new_debug_unreachable" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54" + +[[package]] +name = "nodrop" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" + +[[package]] +name = "nom8" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae01545c9c7fc4486ab7debaf2aad7003ac19431791868fb2e8066df97fad2f8" +dependencies = [ + "memchr", +] + +[[package]] +name = "notify-rust" +version = "4.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "260208751689b605138bb55ab6af43ad75f628619a7e0b818d63bf6629e59467" +dependencies = [ + "dbus", + "mac-notification-sys", + "tauri-winrt-notification", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + +[[package]] +name = "num-integer" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" +dependencies = [ + "autocfg", + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_cpus" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b" +dependencies = [ + "hermit-abi", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e0072973714303aa6e3631c7e8e777970cf4bdd25dc4932e41031027b8bcc4e" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0629cbd6b897944899b1f10496d9c4a7ac5878d45fd61bc22e9e79bfbbc29597" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "objc" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1" +dependencies = [ + "malloc_buf", + "objc_exception", +] + +[[package]] +name = "objc-foundation" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9" +dependencies = [ + "block", + "objc", + "objc_id", +] + +[[package]] +name = "objc_exception" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4" +dependencies = [ + "cc", +] + +[[package]] +name = "objc_id" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b" +dependencies = [ + "objc", +] + +[[package]] +name = "once_cell" +version = "1.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" + +[[package]] +name = "open" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2078c0039e6a54a0c42c28faa984e115fb4c2d5bf2208f77d1961002df8576f8" +dependencies = [ + "pathdiff", + "windows-sys 0.42.0", +] + +[[package]] +name = "os_info" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5209b2162b2c140df493a93689e04f8deab3a67634f5bc7a553c0a98e5b8d399" +dependencies = [ + "log", + "serde", + "winapi", +] + +[[package]] +name = "os_pipe" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a53dbb20faf34b16087a931834cba2d7a73cc74af2b7ef345a4c8324e2409a12" +dependencies = [ + "libc", + "windows-sys 0.45.0", +] + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + +[[package]] +name = "pango" +version = "0.16.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdff66b271861037b89d028656184059e03b0b6ccb36003820be19f7200b1e94" +dependencies = [ + "bitflags", + "gio", + "glib", + "libc", + "once_cell", + "pango-sys", +] + +[[package]] +name = "pango-sys" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e134909a9a293e04d2cc31928aa95679c5e4df954d0b85483159bd20d8f047f" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[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.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-sys 0.45.0", +] + +[[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.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" + +[[package]] +name = "pest" +version = "2.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "028accff104c4e513bad663bbcd2ad7cfd5304144404c31ed0a77ac103d00660" +dependencies = [ + "thiserror", + "ucd-trie", +] + +[[package]] +name = "phf" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12" +dependencies = [ + "phf_macros 0.8.0", + "phf_shared 0.8.0", + "proc-macro-hack", +] + +[[package]] +name = "phf" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" +dependencies = [ + "phf_macros 0.10.0", + "phf_shared 0.10.0", + "proc-macro-hack", +] + +[[package]] +name = "phf_codegen" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815" +dependencies = [ + "phf_generator 0.8.0", + "phf_shared 0.8.0", +] + +[[package]] +name = "phf_generator" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526" +dependencies = [ + "phf_shared 0.8.0", + "rand 0.7.3", +] + +[[package]] +name = "phf_generator" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6" +dependencies = [ + "phf_shared 0.10.0", + "rand 0.8.5", +] + +[[package]] +name = "phf_macros" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c" +dependencies = [ + "phf_generator 0.8.0", + "phf_shared 0.8.0", + "proc-macro-hack", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "phf_macros" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0" +dependencies = [ + "phf_generator 0.10.0", + "phf_shared 0.10.0", + "proc-macro-hack", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "phf_shared" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7" +dependencies = [ + "siphasher", +] + +[[package]] +name = "phf_shared" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" +dependencies = [ + "siphasher", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkg-config" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160" + +[[package]] +name = "plist" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5329b8f106a176ab0dce4aae5da86bfcb139bb74fb00882859e03745011f3635" +dependencies = [ + "base64 0.13.1", + "indexmap", + "line-wrap", + "quick-xml 0.26.0", + "serde", + "time", +] + +[[package]] +name = "png" +version = "0.17.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d708eaf860a19b19ce538740d2b4bdeeb8337fa53f7738455e706623ad5c638" +dependencies = [ + "bitflags", + "crc32fast", + "flate2", + "miniz_oxide", +] + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "precomputed-hash" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" + +[[package]] +name = "proc-macro-crate" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66618389e4ec1c7afe67d51a9bf34ff9236480f8d51e7489b7d5ab0303c13f34" +dependencies = [ + "once_cell", + "toml_edit", +] + +[[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", + "syn", + "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-hack" +version = "0.5.20+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" + +[[package]] +name = "proc-macro2" +version = "1.0.51" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d727cae5b39d21da60fa540906919ad737832fe0b1c165da3a34d6548c849d6" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quick-xml" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11bafc859c6815fbaffbbbf4229ecb767ac913fecb27f9ad4343662e9ef099ea" +dependencies = [ + "memchr", +] + +[[package]] +name = "quick-xml" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f50b1c63b38611e7d4d7f68b82d3ad0cc71a2ad2e7f61fc10f1328d917c93cd" +dependencies = [ + "memchr", +] + +[[package]] +name = "quote" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", + "rand_pcg", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", +] + +[[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 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom 0.2.8", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", +] + +[[package]] +name = "rand_pcg" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429" +dependencies = [ + "rand_core 0.5.1", +] + +[[package]] +name = "raw-window-handle" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed7e3d950b66e19e0c372f3fa3fbbcf85b1746b571f74e0c2af6042a5c93420a" +dependencies = [ + "cty", +] + +[[package]] +name = "redox_syscall" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags", +] + +[[package]] +name = "redox_users" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" +dependencies = [ + "getrandom 0.2.8", + "redox_syscall", + "thiserror", +] + +[[package]] +name = "regex" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.6.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" + +[[package]] +name = "remove_dir_all" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" +dependencies = [ + "winapi", +] + +[[package]] +name = "rfd" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fe3bae427b011620cf4436d5dd7405c1a86dce3dfcdc0cda12b41fd31569ac3" +dependencies = [ + "block", + "dispatch", + "glib-sys", + "gobject-sys", + "gtk-sys", + "js-sys", + "log", + "objc", + "objc-foundation", + "objc_id", + "raw-window-handle", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows 0.44.0", +] + +[[package]] +name = "rustc_version" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" +dependencies = [ + "semver 0.11.0", +] + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver 1.0.16", +] + +[[package]] +name = "rustversion" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5583e89e108996506031660fe09baa5011b9dd0341b89029313006d1fb508d70" + +[[package]] +name = "ryu" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" + +[[package]] +name = "safemem" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" + +[[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 = "scoped-tls" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" + +[[package]] +name = "scopeguard" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" + +[[package]] +name = "selectors" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe" +dependencies = [ + "bitflags", + "cssparser", + "derive_more", + "fxhash", + "log", + "matches", + "phf 0.8.0", + "phf_codegen", + "precomputed-hash", + "servo_arc", + "smallvec", + "thin-slice", +] + +[[package]] +name = "semver" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" +dependencies = [ + "semver-parser", +] + +[[package]] +name = "semver" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a" +dependencies = [ + "serde", +] + +[[package]] +name = "semver-parser" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" +dependencies = [ + "pest", +] + +[[package]] +name = "serde" +version = "1.0.152" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.152" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76" +dependencies = [ + "itoa 1.0.5", + "ryu", + "serde", +] + +[[package]] +name = "serde_repr" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a5ec9fa74a20ebbe5d9ac23dac1fc96ba0ecfe9f50f2843b52e537b10fbcb4e" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa 1.0.5", + "ryu", + "serde", +] + +[[package]] +name = "serde_with" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" +dependencies = [ + "serde", + "serde_with_macros", +] + +[[package]] +name = "serde_with_macros" +version = "1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serialize-to-javascript" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9823f2d3b6a81d98228151fdeaf848206a7855a7a042bbf9bf870449a66cafb" +dependencies = [ + "serde", + "serde_json", + "serialize-to-javascript-impl", +] + +[[package]] +name = "serialize-to-javascript-impl" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74064874e9f6a15f04c1f3cb627902d0e6b410abbf36668afa873c61889f1763" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "servo_arc" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432" +dependencies = [ + "nodrop", + "stable_deref_trait", +] + +[[package]] +name = "sha2" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "sharded-slab" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "shared_child" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0d94659ad3c2137fef23ae75b03d5241d633f8acded53d672decfa0e6e0caef" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "siphasher" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de" + +[[package]] +name = "slab" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef" +dependencies = [ + "autocfg", +] + +[[package]] +name = "smallvec" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" + +[[package]] +name = "soup3" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82bc46048125fefd69d30b32b9d263d6556c9ffe82a7a7df181a86d912da5616" +dependencies = [ + "bitflags", + "futures-channel", + "gio", + "glib", + "libc", + "once_cell", + "soup3-sys", +] + +[[package]] +name = "soup3-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "014bbeb1c4cdb30739dc181e8d98b7908f124d9555843afa89b5570aaf4ec62b" +dependencies = [ + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "state" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbe866e1e51e8260c9eed836a042a5e7f6726bb2b411dffeaa712e19c388f23b" +dependencies = [ + "loom", +] + +[[package]] +name = "string_cache" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "213494b7a2b503146286049378ce02b482200519accc31872ee8be91fa820a08" +dependencies = [ + "new_debug_unreachable", + "once_cell", + "parking_lot", + "phf_shared 0.10.0", + "precomputed-hash", + "serde", +] + +[[package]] +name = "string_cache_codegen" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988" +dependencies = [ + "phf_generator 0.10.0", + "phf_shared 0.10.0", + "proc-macro2", + "quote", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "strum" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7ac893c7d471c8a21f31cfe213ec4f6d9afeed25537c772e08ef3f005f8729e" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339f799d8b549e3744c7ac7feb216383e4005d94bdb22561b3ab8f3b808ae9fb" +dependencies = [ + "heck 0.3.3", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "swift-rs" +version = "0.3.0" +source = "git+https://github.com/Brendonovich/swift-rs?rev=eb6de914ad57501da5019154d476d45660559999#eb6de914ad57501da5019154d476d45660559999" +dependencies = [ + "base64 0.13.1", + "serde", + "serde_json", +] + +[[package]] +name = "syn" +version = "1.0.107" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "system-deps" +version = "6.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2955b1fe31e1fa2fbd1976b71cc69a606d7d4da16f6de3333d0c92d51419aeff" +dependencies = [ + "cfg-expr", + "heck 0.4.1", + "pkg-config", + "toml", + "version-compare", +] + +[[package]] +name = "tao" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1d16138f5d521fcde40580e1a34df784b063dd9ac05c7cbe344bf01f02a23be" +dependencies = [ + "bitflags", + "cairo-rs", + "cc", + "cocoa", + "core-foundation", + "core-graphics", + "crossbeam-channel", + "dispatch", + "gdk", + "gdk-pixbuf", + "gdk-sys", + "gdkwayland-sys", + "gdkx11-sys", + "gio", + "glib", + "glib-sys", + "gtk", + "image", + "instant", + "jni", + "lazy_static", + "libc", + "log", + "ndk", + "ndk-context", + "ndk-sys", + "objc", + "once_cell", + "parking_lot", + "png", + "raw-window-handle", + "scopeguard", + "serde", + "tao-macros", + "unicode-segmentation", + "uuid", + "windows 0.44.0", + "windows-implement", + "x11-dl", +] + +[[package]] +name = "tao-macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b27a4bcc5eb524658234589bdffc7e7bfb996dbae6ce9393bfd39cb4159b445" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "tar" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b55807c0344e1e6c04d7c965f5289c39a8d94ae23ed5c0b57aabac549f871c6" +dependencies = [ + "filetime", + "libc", + "xattr", +] + +[[package]] +name = "tauri" +version = "2.0.0-alpha.3" +source = "git+https://github.com/tauri-apps/tauri?branch=next#dffd8eb5a87558afc2fca21870643ff7dad9eb04" +dependencies = [ + "anyhow", + "attohttpc", + "cocoa", + "dirs-next", + "embed_plist", + "encoding_rs", + "flate2", + "futures-util", + "glib", + "glob", + "gtk", + "heck 0.4.1", + "http", + "ignore", + "jni", + "libc", + "log", + "notify-rust", + "objc", + "once_cell", + "open", + "os_info", + "os_pipe", + "percent-encoding", + "rand 0.8.5", + "raw-window-handle", + "regex", + "rfd", + "semver 1.0.16", + "serde", + "serde_json", + "serde_repr", + "serialize-to-javascript", + "shared_child", + "state", + "swift-rs", + "tar", + "tauri-build", + "tauri-macros", + "tauri-runtime", + "tauri-runtime-wry", + "tauri-utils", + "tempfile", + "thiserror", + "tokio", + "url", + "uuid", + "webkit2gtk", + "webview2-com", + "windows 0.44.0", +] + +[[package]] +name = "tauri-build" +version = "2.0.0-alpha.1" +source = "git+https://github.com/tauri-apps/tauri?branch=next#dffd8eb5a87558afc2fca21870643ff7dad9eb04" +dependencies = [ + "anyhow", + "cargo_toml", + "filetime", + "heck 0.4.1", + "json-patch", + "semver 1.0.16", + "serde", + "serde_json", + "swift-rs", + "tauri-utils", + "tauri-winres", + "walkdir", +] + +[[package]] +name = "tauri-codegen" +version = "2.0.0-alpha.1" +source = "git+https://github.com/tauri-apps/tauri?branch=next#dffd8eb5a87558afc2fca21870643ff7dad9eb04" +dependencies = [ + "base64 0.21.0", + "brotli", + "ico", + "json-patch", + "plist", + "png", + "proc-macro2", + "quote", + "regex", + "semver 1.0.16", + "serde", + "serde_json", + "sha2", + "tauri-utils", + "thiserror", + "time", + "url", + "uuid", + "walkdir", +] + +[[package]] +name = "tauri-macros" +version = "2.0.0-alpha.1" +source = "git+https://github.com/tauri-apps/tauri?branch=next#dffd8eb5a87558afc2fca21870643ff7dad9eb04" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "syn", + "tauri-codegen", + "tauri-utils", +] + +[[package]] +name = "tauri-plugin-camera" +version = "0.0.0" +dependencies = [ + "serde", + "serde_json", + "tauri", + "tauri-build", + "thiserror", +] + +[[package]] +name = "tauri-runtime" +version = "0.13.0-alpha.1" +source = "git+https://github.com/tauri-apps/tauri?branch=next#dffd8eb5a87558afc2fca21870643ff7dad9eb04" +dependencies = [ + "gtk", + "http", + "http-range", + "jni", + "rand 0.8.5", + "raw-window-handle", + "serde", + "serde_json", + "tauri-utils", + "thiserror", + "url", + "uuid", + "webview2-com", + "windows 0.44.0", +] + +[[package]] +name = "tauri-runtime-wry" +version = "0.13.0-alpha.1" +source = "git+https://github.com/tauri-apps/tauri?branch=next#dffd8eb5a87558afc2fca21870643ff7dad9eb04" +dependencies = [ + "cocoa", + "gtk", + "jni", + "percent-encoding", + "rand 0.8.5", + "raw-window-handle", + "tauri-runtime", + "tauri-utils", + "uuid", + "webkit2gtk", + "webview2-com", + "windows 0.44.0", + "wry", +] + +[[package]] +name = "tauri-utils" +version = "2.0.0-alpha.1" +source = "git+https://github.com/tauri-apps/tauri?branch=next#dffd8eb5a87558afc2fca21870643ff7dad9eb04" +dependencies = [ + "brotli", + "ctor", + "glob", + "heck 0.4.1", + "html5ever", + "infer", + "json-patch", + "kuchiki", + "memchr", + "phf 0.10.1", + "proc-macro2", + "quote", + "semver 1.0.16", + "serde", + "serde_json", + "serde_with", + "thiserror", + "url", + "walkdir", + "windows 0.44.0", +] + +[[package]] +name = "tauri-winres" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b7a78dc04f75fb5ab815e66ac561c81e92a968a40f29e7c21afd152d694fad8" +dependencies = [ + "toml", + "version_check", +] + +[[package]] +name = "tauri-winrt-notification" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c58de036c4d2e20717024de2a3c4bf56c301f07b21bc8ef9b57189fce06f1f3b" +dependencies = [ + "quick-xml 0.23.1", + "strum", + "windows 0.39.0", +] + +[[package]] +name = "tempfile" +version = "3.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4" +dependencies = [ + "cfg-if", + "fastrand", + "libc", + "redox_syscall", + "remove_dir_all", + "winapi", +] + +[[package]] +name = "tendril" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0" +dependencies = [ + "futf", + "mac", + "utf-8", +] + +[[package]] +name = "thin-slice" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" + +[[package]] +name = "thiserror" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a9cd18aa97d5c45c6603caea1da6628790b37f7a34b6ca89522331c5180fed0" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fb327af4685e4d03fa8cbcf1716380da910eeb2bb8be417e7f9fd3fb164f36f" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "thread_local" +version = "1.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "time" +version = "0.3.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53250a3b3fed8ff8fd988587d8925d26a83ac3845d9e03b220b37f34c2b8d6c2" +dependencies = [ + "itoa 1.0.5", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e153e1f1acaef8acc537e68b44906d2db6436e2b35ac2c6b42640fff91f00fd" + +[[package]] +name = "time-macros" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a460aeb8de6dcb0f381e1ee05f1cd56fcf5a5f6eb8187ff3d8f0b11078d38b7c" +dependencies = [ + "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 = "tokio" +version = "1.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8e00990ebabbe4c14c08aca901caed183ecd5c09562a12c824bb53d3c3fd3af" +dependencies = [ + "autocfg", + "bytes", + "memchr", + "num_cpus", + "pin-project-lite", + "windows-sys 0.42.0", +] + +[[package]] +name = "toml" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_datetime" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4553f467ac8e3d374bc9a177a26801e5d0f9b211aa1673fb137a403afd1c9cf5" + +[[package]] +name = "toml_edit" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56c59d8dd7d0dcbc6428bf7aa2f0e823e26e43b3c9aca15bbc9475d23e5fa12b" +dependencies = [ + "indexmap", + "nom8", + "toml_datetime", +] + +[[package]] +name = "tracing" +version = "0.1.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" +dependencies = [ + "cfg-if", + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "tracing-core" +version = "0.1.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-log" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" +dependencies = [ + "lazy_static", + "log", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6176eae26dd70d0c919749377897b54a9276bd7061339665dd68777926b5a70" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", +] + +[[package]] +name = "treediff" +version = "4.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52984d277bdf2a751072b5df30ec0377febdb02f7696d64c2d7d54630bac4303" +dependencies = [ + "serde_json", +] + +[[package]] +name = "typenum" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" + +[[package]] +name = "ucd-trie" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81" + +[[package]] +name = "unicode-bidi" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d54675592c1dbefd78cbd98db9bacd89886e1ca50692a0692baefffdeb92dd58" + +[[package]] +name = "unicode-ident" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84a22b9f218b40614adcb3f4ff08b703773ad44fa9423e4e0d346d5db86e4ebc" + +[[package]] +name = "unicode-normalization" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" + +[[package]] +name = "url" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", + "serde", +] + +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + +[[package]] +name = "uuid" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1674845326ee10d37ca60470760d4288a6f80f304007d92e5c53bab78c9cfd79" +dependencies = [ + "getrandom 0.2.8", +] + +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + +[[package]] +name = "version-compare" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29" + +[[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.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" +dependencies = [ + "same-file", + "winapi", + "winapi-util", +] + +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[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.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31f8dcbc21f30d9b8f2ea926ecb58f6b91192c17e9d33594b3df58b2007ca53b" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f219e0d211ba40266969f6dbdd90636da12f75bee4fc9d6c23d1260dadb51454" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c21f77c0bedc37fd5dc21f897894a5ca01e7bb159884559461862ae90c0b4c5" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2aff81306fcac3c7515ad4e177f521b5c9a15f2b08f4e32d823066102f35a5f6" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.84" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d" + +[[package]] +name = "web-sys" +version = "0.3.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33b99f4b23ba3eec1a53ac264e35a755f00e966e0065077d6027c0f575b0b97" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webkit2gtk" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8eea819afe15eb8dcdff4f19d8bfda540bae84d874c10e6f4b8faf2d6704bd1" +dependencies = [ + "bitflags", + "cairo-rs", + "gdk", + "gdk-sys", + "gio", + "gio-sys", + "glib", + "glib-sys", + "gobject-sys", + "gtk", + "gtk-sys", + "javascriptcore-rs", + "libc", + "once_cell", + "soup3", + "webkit2gtk-sys", +] + +[[package]] +name = "webkit2gtk-sys" +version = "0.19.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0ac7a95ddd3fdfcaf83d8e513b4b1ad101b95b413b6aa6662ed95f284fc3d5b" +dependencies = [ + "bitflags", + "cairo-sys-rs", + "gdk-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "gtk-sys", + "javascriptcore-rs-sys", + "libc", + "pkg-config", + "soup3-sys", + "system-deps", +] + +[[package]] +name = "webview2-com" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11296e5daf3a653b79bf47d66c380e4143d5b9c975818871179a3bda79499562" +dependencies = [ + "webview2-com-macros", + "webview2-com-sys", + "windows 0.44.0", + "windows-implement", +] + +[[package]] +name = "webview2-com-macros" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaebe196c01691db62e9e4ca52c5ef1e4fd837dcae27dae3ada599b5a8fd05ac" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "webview2-com-sys" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cde542bed28058a5b028d459689ee57f1d06685bb6c266da3b91b1be6703952f" +dependencies = [ + "regex", + "serde", + "serde_json", + "thiserror", + "windows 0.44.0", + "windows-bindgen", + "windows-metadata", +] + +[[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.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +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" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1c4bd0a50ac6020f65184721f758dba47bb9fbc2133df715ec74a237b26794a" +dependencies = [ + "windows_aarch64_msvc 0.39.0", + "windows_i686_gnu 0.39.0", + "windows_i686_msvc 0.39.0", + "windows_x86_64_gnu 0.39.0", + "windows_x86_64_msvc 0.39.0", +] + +[[package]] +name = "windows" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e745dab35a0c4c77aa3ce42d595e13d2003d6902d6b08c9ef5fc326d08da12b" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-targets", +] + +[[package]] +name = "windows-bindgen" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "222204ecf46521382a4d88b4a1bbefca9f8855697b4ab7d20803901425e061a3" +dependencies = [ + "windows-metadata", + "windows-tokens", +] + +[[package]] +name = "windows-implement" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ce87ca8e3417b02dc2a8a22769306658670ec92d78f1bd420d6310a67c245c6" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-interface" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "853f69a591ecd4f810d29f17e902d40e349fb05b0b11fff63b08b826bfe39c7f" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "windows-metadata" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee78911e3f4ce32c1ad9d3c7b0bd95389662ad8d8f1a3155688fed70bd96e2b6" + +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc 0.42.1", + "windows_i686_gnu 0.42.1", + "windows_i686_msvc 0.42.1", + "windows_x86_64_gnu 0.42.1", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc 0.42.1", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc 0.42.1", + "windows_i686_gnu 0.42.1", + "windows_i686_msvc 0.42.1", + "windows_x86_64_gnu 0.42.1", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc 0.42.1", +] + +[[package]] +name = "windows-tokens" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4251900975a0d10841c5d4bde79c56681543367ef811f3fabb8d1803b0959b" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec7711666096bd4096ffa835238905bb33fb87267910e154b18b44eaabb340f2" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7" + +[[package]] +name = "windows_i686_gnu" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "763fc57100a5f7042e3057e7e8d9bdd7860d330070251a73d003563a3bb49e1b" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640" + +[[package]] +name = "windows_i686_msvc" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7bc7cbfe58828921e10a9f446fcaaf649204dcfe6c1ddd712c5eebae6bda1106" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6868c165637d653ae1e8dc4d82c25d4f97dd6605eaa8d784b5c6e0ab2a252b65" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e4d40883ae9cae962787ca76ba76390ffa29214667a111db9e0a1ad8377e809" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd" + +[[package]] +name = "wry" +version = "0.27.0" +source = "git+https://github.com/tauri-apps/wry?branch=dev#9975dda12a122051b375ec6485650546d2d91c26" +dependencies = [ + "base64 0.13.1", + "block", + "cocoa", + "core-graphics", + "crossbeam-channel", + "dunce", + "gdk", + "gio", + "glib", + "gtk", + "html5ever", + "http", + "kuchiki", + "libc", + "log", + "objc", + "objc_id", + "once_cell", + "serde", + "serde_json", + "sha2", + "soup3", + "tao", + "thiserror", + "url", + "webkit2gtk", + "webkit2gtk-sys", + "webview2-com", + "windows 0.44.0", + "windows-implement", +] + +[[package]] +name = "x11" +version = "2.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e" +dependencies = [ + "libc", + "pkg-config", +] + +[[package]] +name = "x11-dl" +version = "2.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" +dependencies = [ + "libc", + "once_cell", + "pkg-config", +] + +[[package]] +name = "xattr" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d1526bbe5aaeb5eb06885f4d987bcdfa5e23187055de9b83fe00156a821fabc" +dependencies = [ + "libc", +] diff --git a/plugins/camera/examples/tauri-app/src-tauri/Cargo.toml b/plugins/camera/examples/tauri-app/src-tauri/Cargo.toml new file mode 100644 index 00000000..aa341f89 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/Cargo.toml @@ -0,0 +1,27 @@ +workspace = {} + +[package] +name = "app" +version = "0.0.0" +description = "A Tauri App" +authors = ["you"] +license = "" +repository = "" +edition = "2021" +rust-version = "1.64" + +[lib] +crate-type = ["staticlib", "cdylib", "rlib"] + +[build-dependencies] +tauri-build = { git = "https://github.com/tauri-apps/tauri", branch = "next", features = [] } + +[dependencies] +serde_json = "1.0" +serde = { version = "1.0", features = ["derive"] } +tauri = { git = "https://github.com/tauri-apps/tauri", branch = "next", features = ["api-all"] } +tauri-plugin-camera = { path = "../../../" } + +[features] +# DO NOT remove this +custom-protocol = [ "tauri/custom-protocol" ] diff --git a/plugins/camera/examples/tauri-app/src-tauri/build.rs b/plugins/camera/examples/tauri-app/src-tauri/build.rs new file mode 100644 index 00000000..795b9b7c --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/build.rs @@ -0,0 +1,3 @@ +fn main() { + tauri_build::build() +} diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.editorconfig b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.editorconfig new file mode 100644 index 00000000..ebe51d3b --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.editorconfig @@ -0,0 +1,12 @@ +# EditorConfig is awesome: https://EditorConfig.org + +# top-most EditorConfig file +root = true + +[*] +indent_style = space +indent_size = 2 +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = false +insert_final_newline = false \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.gitignore b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.gitignore new file mode 100644 index 00000000..671e5074 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/.gitignore @@ -0,0 +1,18 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +build +/captures +.externalNativeBuild +.cxx +local.properties + +/tauri-plugins +/tauri-api diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/.gitignore b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/.gitignore new file mode 100644 index 00000000..e897324f --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/.gitignore @@ -0,0 +1 @@ +/src/main/java/app/tauri/app/generated diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/build.gradle.kts b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/build.gradle.kts new file mode 100644 index 00000000..7e709df9 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/build.gradle.kts @@ -0,0 +1,117 @@ +plugins { + id("com.android.application") + id("org.jetbrains.kotlin.android") + id("rustPlugin") +} + +android { + compileSdk = 33 + defaultConfig { + manifestPlaceholders["usesCleartextTraffic"] = "false" + applicationId = "app.tauri.app" + minSdk = 24 + targetSdk = 33 + versionCode = 1 + versionName = "1.0" + } + sourceSets.getByName("main") { + // Vulkan validation layers + val ndkHome = System.getenv("NDK_HOME") + jniLibs.srcDir("${ndkHome}/sources/third_party/vulkan/src/build-android/jniLibs") + } + buildTypes { + getByName("debug") { + manifestPlaceholders["usesCleartextTraffic"] = "true" + isDebuggable = true + isJniDebuggable = true + isMinifyEnabled = false + packagingOptions { + jniLibs.keepDebugSymbols.add("*/arm64-v8a/*.so") + + jniLibs.keepDebugSymbols.add("*/armeabi-v7a/*.so") + + jniLibs.keepDebugSymbols.add("*/x86/*.so") + + jniLibs.keepDebugSymbols.add("*/x86_64/*.so") + } + } + getByName("release") { + isMinifyEnabled = true + val proguards = fileTree(".") { + include("*.pro") + } + proguardFiles(*proguards.toList().toTypedArray()) + } + } + flavorDimensions.add("abi") + productFlavors { + create("universal") { + val abiList = findProperty("abiList") as? String + + dimension = "abi" + ndk { + abiFilters += abiList?.split(",")?.map { it.trim() } ?: listOf( "arm64-v8a", "armeabi-v7a", "x86", "x86_64", + ) + } + } + create("arm64") { + dimension = "abi" + ndk { + abiFilters += listOf("arm64-v8a") + } + } + + create("arm") { + dimension = "abi" + ndk { + abiFilters += listOf("armeabi-v7a") + } + } + + create("x86") { + dimension = "abi" + ndk { + abiFilters += listOf("x86") + } + } + + create("x86_64") { + dimension = "abi" + ndk { + abiFilters += listOf("x86_64") + } + } + } + + assetPacks += mutableSetOf() + namespace = "app.tauri.app" +} + +rust { + rootDirRel = "../../../../" + targets = listOf("aarch64", "armv7", "i686", "x86_64") + arches = listOf("arm64", "arm", "x86", "x86_64") +} + +dependencies { + implementation("androidx.webkit:webkit:1.5.0") + implementation("androidx.appcompat:appcompat:1.5.1") + implementation("com.google.android.material:material:1.7.0") + testImplementation("junit:junit:4.13.2") + androidTestImplementation("androidx.test.ext:junit:1.1.4") + androidTestImplementation("androidx.test.espresso:espresso-core:3.5.0") + implementation(project(":tauri-android")) +} + +apply(from = "tauri.build.gradle.kts") + +afterEvaluate { + android.applicationVariants.all { + tasks["mergeUniversalReleaseJniLibFolders"].dependsOn(tasks["rustBuildRelease"]) + tasks["mergeUniversalDebugJniLibFolders"].dependsOn(tasks["rustBuildDebug"]) + productFlavors.filter{ it.name != "universal" }.forEach { _ -> + val archAndBuildType = name.capitalize() + tasks["merge${archAndBuildType}JniLibFolders"].dependsOn(tasks["rustBuild${archAndBuildType}"]) + } + } +} diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-rules.pro b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-rules.pro new file mode 100644 index 00000000..481bb434 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-tauri.pro b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-tauri.pro new file mode 100644 index 00000000..b4eb481e --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/proguard-tauri.pro @@ -0,0 +1,24 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. + +-keep class app.tauri.app.TauriActivity { + getAppClass(...); + getVersion(); +} + +-keep class app.tauri.app.RustWebView { + public (...); + loadUrlMainThread(...); +} + +-keep class app.tauri.app.Ipc { + public (...); + @android.webkit.JavascriptInterface public ; +} + +-keep class app.tauri.app.RustWebChromeClient,app.tauri.app.RustWebViewClient { + public (...); +} + +-keep class app.tauri.app.MainActivity { + public getPluginManager(); +} diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/AndroidManifest.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/AndroidManifest.xml new file mode 100644 index 00000000..36df901f --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/AndroidManifest.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/java/app/tauri/app/MainActivity.kt b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/java/app/tauri/app/MainActivity.kt new file mode 100644 index 00000000..3dff0081 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/java/app/tauri/app/MainActivity.kt @@ -0,0 +1,7 @@ +package app.tauri.app + +import app.tauri.plugin.PluginManager + +class MainActivity : TauriActivity() { + var pluginManager: PluginManager = PluginManager(this) +} diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/arm64-v8a/libapp.so b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/arm64-v8a/libapp.so new file mode 120000 index 00000000..9f1bb9d3 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/arm64-v8a/libapp.so @@ -0,0 +1 @@ +/home/lucas/projects/tauri/plugins-workspace/plugins/camera/examples/tauri-app/src-tauri/target/aarch64-linux-android/debug/libapp.so \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/x86/libapp.so b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/x86/libapp.so new file mode 120000 index 00000000..da9e43a8 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/jniLibs/x86/libapp.so @@ -0,0 +1 @@ +/home/lucas/projects/tauri/plugins-workspace/plugins/camera/examples/tauri-app/src-tauri/target/i686-linux-android/debug/libapp.so \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 00000000..2b068d11 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable/ic_launcher_background.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 00000000..07d5da9c --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/layout/activity_main.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/layout/activity_main.xml new file mode 100644 index 00000000..4fc24441 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,18 @@ + + + + + + \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-hdpi/ic_launcher.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..28f1aa119119336781390c2531c381499576ed59 GIT binary patch literal 3524 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 literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..28f1aa119119336781390c2531c381499576ed59 GIT binary patch literal 3524 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 Hu0mjfi}+A- literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..13dd21476b5c7f69cdfb82969bce7150244c127f GIT binary patch literal 9081 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 literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-mdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..73e48dbfb7dc31ed1e951b77820af88b93fcc418 GIT binary patch literal 3377 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 Hu0mjfi}+A- literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..1d98044f13bdd3afc7cb426644ae118688c03c14 GIT binary patch literal 7971 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 Z{{b+Ide7&7`HKJm002ovPDHLkV1iT#V`TsU literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..a888b336b5bc84b42c0c266ce9b8ec5d9eafed0b GIT binary patch literal 18900 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 I*#%+#2dtK;n*aa+ literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..1d98044f13bdd3afc7cb426644ae118688c03c14 GIT binary patch literal 7971 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 Z{{b+Ide7&7`HKJm002ovPDHLkV1iT#V`TsU literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..081832466b4a17180fe9255fa0d3fcba2010592c GIT binary patch literal 12392 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 K@hVZnfd2y&>ZwQo literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..a2a838e7b550ac82b12e73d71427c6ffea06a944 GIT binary patch literal 29506 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 K@hVZnfd2y&>ZwQo literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..b18bceb64d257ed31d50e65d7f2b98abcfb21158 GIT binary patch literal 16751 zcmb4KLwhbtvwdURwv8Rzwr$%scWm3XZQIt4Z7279Kj99#dRUWwdQ~k%D#(e$L1RM$ z001~i2@$3L?*9KBNbvuv(zXo*03gUFDI%!ik$tTT;e)!e+PBn7ktHSs9D>iKBwDFd zOhrv73N{?p(}vJ>`|e}p+gi3h5~Oq$5kL$naZCDyECEbptK2I0IorVk6LFj|b7Ph? zecu)qQqRru>hDDYj%5-r`2Q;_hDOoih{555^BBS^-`a1vrp@+P*V8IrO+mkFe&Qo} zgKd?S*mH9R0bEaaNN2Q#IE=CTqS?}oVYi68iN~B_f&MdRUxkzXWaF5lOKg~gYQ@}O zJkYLqXAc{F#)nvoospV=yV1zR3yZ~Z6RZvHS#bZ8{W@D(X&*nuXaAnk?IVP8Jr9<+ zex_q_dGKWFTY?8TiaXdM%5qi}QKt0)g8&QUs=!<@fg+bwx$kVUV%e~b<-VvMv@s?; za=rNZSi_81S>=%FmztUi5j7M+H}1%OjmR95zJ#N*T|MGg3 z%^nNg5qwoe_uuvo=C*p74>)xPT97LN)OP%mf-D(u5D~dWl6j3n$q(gx`PkEqsE<*1 z{6&(Ruil)i;7wL0cVm<{^Z=8eWcv7ivwNy1UdmOV;yZj1c5AtJV1t|N6A0EknY*6I z6+eI$=XVVn8LVoZv)8~(!$pA)e|CKg9nIKyAsDyd)|3Xn=9AinSb zvQE#W3^SuT`~+4H8U9mI+pLUmisCG;1&Z6?JtQ<@$<15vZ=EN9L2gF#>^c1$WreU{ z4vNYfupSkWUgquvuvJj_b*WI&I%Bq3OSMbKwy=1DcVgjSTJgof~I_U#&u3; z*J#Ck5@C&jY~b8@oyFC-)KtHRcllaRX*M<7rC&IhA5fA%h+>SGgwy@(ApLfotfuSV zNlSLNi<@3d>-RiBV=Aze&|kSiKyxCncPoaFx#Beey3 z|F#SyPs$rq9?x?W5l8e<|Jc)|@QB0dEC2N~OP}XueXVMW{fI#TGez9Iw>Lu+97H7v z0Es(%RH5mxBRXN5*U9(2F-ljRMs!D(M_i;^2ht~p4A243X9+^vb}$ID-KyH{`R4aT zsN2<4m1rJEAz3MkNEiV4>t7VDpDJFIk=_5>fym_dS_qAdOAH{6z>j~!Em}3*&yz(| zOe8WMeQ?~T^e|n^CXo8Q&0TvmPfM0gFFz85lz0}z!i2qhE#{-Kn$*wXW3Je`bZ7V8 zN+o_u9MA-{hP3e+TwC*oAOP~k%$3}i)XeqYaBXs``*l)%SA@-KWX(`(o1(pl8U9Q7 zrnosVagUqvYf{y9)5mlqEojP28b@2e*}qIu@f)5g@4TN9pq+{**Lz)T7`etNbA=>P zc`cFvmQjrI7B&&dbPyB@_nd3_`71$615hHk+UrE#h=epe zL!A*!N;;K_gILY>KmCz*$9qT(;0+n^E*t>3X4ebA1;nxSJblf`hV5{ZT}w-tagxr1 z625~SL0N((5GJrU0gFI9-1;4y-Tl&1P6nP1Ux`6Q5be@GRImJLtP+$y?}6KV)=^{#u)Y!e z28$Fe12-H#1ts4~(|`5F6=i4)kH_RNa#Y$3banLGzQD9Uc)&T9)^J z#!bUiNmCZ~lt-DvB$z|=4vDJ#Lh(3R&nsEd1L|O8=J$O8VwWW)Z2S^G6)5!9tm3pt zOpSrz7zrPE)W;22V1*IQPyLgNNea~ex=F^qH$ES~x72KEHc`xt5$N>vJ$Zgj@}big zf;F|ir&R!5`;S$tde=7hyjxq?pI=g|=|8hCG1*_7Gb}SXgi%>y{!3MeSXJ^1(MQcc zA&@&LYH?20NffU`=>*u4m!yCJmALWO5)`oGi2(WkoY=mJWx<%HpIud5MVcQHaY~H z`9kF^J`4D?nMFS62>lEwYu)#%_e*pBZV%poAFAtMjYt<`uX=VYZPI6J;z&na=g)RA zbzZKTdl^2-Gs=|6aaLrUQ45S26b_Dp{d9l5r28&%OCL!iJ7Uq`C}1Y7VTfC8-Os&h z^-R{L=%j8bjwBsc<;g9M*cQjoTOYTF7ij`6m$AW=<4+o1=pt!tS{j8yRpFv%XcRD6 zG83LQc||q5y3P9)tF^0Wj@oWx@lSvUJ-VU@QGW=TQHUq-LYV|qMJYWVvrGz%TBjcw zcJN3tx`hL50EyuIvgiFOxiJG?%2%NZ)l?@dJj6U{d}H>!gaMmvt3h?0ZHqU&$0_{z$+%N-=H>+7$C?v|4~Pl5 zPai$+q1ZqCd*80>0CxV>zo*#AP{nPG)J1bq^14rAYO#ljNrKd2Bj=)zK`aeCNSLqL z3{iDmKO04PQH@f~9_`drOqfXG%7~1UL#}@%9dSL6cFo*nyE%@@4pUn`4Xx=hUCOeJ zr)A{YsJglYi=~UBkw{P?v7^EBOXGx!XfFP$Z}y%tHuMnD6NL_)i;5?;HTv`y*>rus z8wV5koxWK`yBU!};9YCjk`!YDH6x2z_R|`nS3A_~_>X@My&Xsv4TLyK5nqEDSifx( zX;=TPj-r!!1^QiA3#VnLF!Rh2%({<6Bfjo-M;#{NbbD}l5^)#fhA+J073ew zJ<-UBSzGsQ>+BIThCUdLpjsi4D<~Yd&N6PnPv162Nmxmv`pLk_5@f14J?Okg_CxU6 zuY1o70Q0BH-vKq)t&T!~fmt=9j-S=~l3aeWX|^gFb&wJ(uPJPeBVHYE+j+{as&axr zONlV{oiWyFm89dWAYrM>hfgMA*x5c1GBwaKiKr{z8M`IL9d(rOr}Zq`Nx_5hx5}-W z-d)Pj6-b6mbnLRc#PYSzJ@)MX3(ZXBEUJK-V4v7sU;h1}Q7SuXa4>}C!^GaNBg1y} zVZb@Fxj(MbEE=QrPa?Q<^x$wc{`=fnFFi$y~n`J-g*6&2CQ?7ep@YFKjxF z4QIScR{=K*vBpB+!W2;!d*iT);&9y|S>e`u0~Zm2E#t>6W*Q zbEIQkUYnvsltPhdET(|@YIx6S%urSUW(wRULlN4MuwPPor6 zE#>GX%#~O;w<7MiZs0ym^v0z4vU|9gZAp^!>-r;bT9haaU6GEMS9hf>;Z=GZR564y z_io^L?k0zzi36)3ylDQCgu@`25v{EW3e=b$zd?$&*r30f%JBApvDR(xU!xJOn9YJ9 z5+_FKLJQ*Nh$Zd*tKf9B_W7H|Z~e^~Yb}_>rq}|#r0^wam8!={d+uZcxY8t4tVODH zCs(MyDiGJUzBq~F#-|_;qvJc#f4*N_+{mM2`1JCPExSlAHGo9e1RkTHboJ~tZKhg3 z{XDdlHQV;}9kr35pB&%|w_;8L{{8#>o}A65e&RC2fP9?)j{V2FpchY00a+F+mlgH! zrwZSjs!o43g){iZkM0)*lt1+CgjPOewmmAD>3n{NeCEZ<_b zzEUeOG`8q-__Z{k+VDWP1j7(`@x(#|)qqTy04nv{hTfSMA^6x4){%6P{ z;*_dyHsMIsRGI~PWJA7fB_$Na*(KBK)vf89t-p|*D=j*NkzVq{s@_fJlKvMRm_d-Gi`U#OZlMT)r;FuSF zd%8A~s~Ds`QypZu?#ErCc!CdvPTWsLXF$P!Ib+qE8${^SUZ%5k9oGIg=M{pm7B+bV zA!Ut90{a`-joEa?OewXrRINOKo#7JUOxbU%y&-*kceiP8$LR2ByLLK_oq&Ku1_ zLwywyqO!mCvqSlePbj+jrpF{HWvB>=$(!hj_w?HJu%th&9Q zu(lB%ojIyyE329Z0niV937Otc1SIR>j_V~wzP(&))#5SZyo}>+ex<+I=NOV_?ODC1 zuxOsact!yL8!8}-PUN|YASH$CeR<9o7i*0^`A}y2yL%F%YAQRLIiJcKVGy-4&Opi( z^LSt@EOl63jyy@Jsr_w1w{3`Y;%N6uj~`nI08DU^yUrc@F@4rv<&$o*CKf#p3JSZY z_3#Kx3+gT@)A%=L2@fIb>W4}0NVes+&BdTpjeZm? zZpwm`*=fask1+tpTJ({pjC!FfF1wje)wJi-u9W{xjP3~=p4qtRh*`;Ys3P7m>^zJ4 zU)Cp>;qGmapKtG2D}I<;4H_4(`~KU^`Lpic?;HehDYBK}aCfjIO#_Vz3DP5RiawW- z`QZ~6H>5EUBT}vvo)r90oAv7r$!S>THtdUy0oPV|KXXQbmKnT=K|xCR;$9QGwTayO z2XA>(o?o}v4%sf8;znc_D>4Ik+})Yq^PVE9@IEzaYPWGRGL^ItmaoV}I0~_?Y1$5Z zrA=jy(3n#!PGE@GbJm3M%4dSL(z)UGay#hIoHI)I{G!l6x{xsv$a6i5oSLQC7HH}+?S7JtnuA=cuAp9)5W7zzqt8}KL9QiWAisRrq9e;J_3fu zCLl&G#>XIWe7}xCrWAFtZhygrIK#f$Q$@wBl$NM$`pKR~<09fT%PKAn^L_elK z%$vCbAax3H2s`n*9glUYxUwy{X z2x$YQdx(Mk60CkqYV}l@i4K=-X5l2g-Ij(nneoc1EXs*L=`9V9s)Le7QszMw*ASN9@lPDq@OL z#Buxc7VPuD$iRxIEroNA2>|aavFCUH%`A^r%ZA^7eaI^MD9QB&v%d z+5Y5OBK&$M_%tFmHU~xfqX3mtY6uBpL~dNgV8Xy*DfMyN_>`#1F+)6li_=5_cX0;t zj-VnL1AP1giNxhV+3;xZid>F~pELTwBSDAK`&LRtF(@g=mdO>M;zW)y6Y%f_?C`9N0cmmJMHJ#OiGj^YZ3Cn z^|?!DS_(>6Ba#3=n74pZ(t)(l+2mhx80o--AkF;G zYg#OZp2wbxS8}0dapo7Ni|QdZi{^WUTKaQ@`()TB%21=$Rw zGgugA0W0FYzz_{?2|)zx`*1ikPYo^EKdPw2BMoB!t)sBTvt04pCYMW2!Ta_htczkL zf<#N)toU*-wi-V+_rp8*&|jZBQ>NGYtQRDQC(vUFxzd9t;4Yjz{uhqbSw^j4s_Ih2 z7o7b~WhE*CpO2%#Qxfv;$XrWstG(^Tm^U;nIkZJ>!yRyGcyTm4CbBP2ARNu&kg2j4 z>2$6m&WbzGg-fqN!S=^cDc=dz&d&Xps;*OA_H#ji9~c-PJd~)uKq?8nd;Ky-$-TTb zHH_YG^PL)7r1*;b8e{0C9#Aswl0-jI>)JK<$*W~>6S0An<)Z#y2-($+k`|a62e^X6 znzr-YYepc4s6Ds)t%@KoSC~fj0xGxqNRMt>b{($FgoY$YdpPt-P zSt{UI2}4IYxd@q1+Tn~v+39YEsGE$Z;e?HGlXXkXiY(X{3>_v~N5lq4Gul^pL5m6( z>|%YYc$37feO7>6pCBW-Ogh&*lgY5IlPG5@+1mOI!~{JvTNj~viao#IZ}g3+^X?!O z0x)(arfKE%=V$}Ly4+c1V#e%}``+(pHVQj*3}|FaeY=l*${#U>A7I$CihUt|D53a} zCPA}->14iNtz9y}Pa5KvLlu&)Gvd|n_0Fyv5mJh>u~OwLzKH2GEob8G9*CyXv}*kV zW@M1cXN$lY(?sI5mM!Uj$fgH;4jV|ADkfzG=@;3;4cgIeaolj87K8j4>(yWZ{{={( zY-n0R4UD}GX!pEN#fa-^;oIstEU2)YGj(m&2X@LDV-wWGG5;2aow^4umxP&fG7G!f zReK(IZi?l5vu^z)Eo#w}O6XSQnuDOP^US2GHRs+!wCOe!))0=$uv{IE|HEB%h8im& z-yFpRZonyGUG$mT9wRMz4YjCmWTmkbmzWpSSAM1q_$4#?Q4BIeR7)I%eVAJW<Pn+(o;jM)&Qg^nnlIcK-mr zr~pGpVkdY~RauLc!XBWw!}{nfRshAoqv~Ya>XAx{T)=tN>w5O8W*b~t>}_IsY$AA} z)|1DMr6KymG=p0IZVUO7#1Hfqu6Spx#tANy+eenr%&RHF?kn-ys^;v(vu7vcZ=O}` zK`)%B0)(HnhoSJ$r>X46_*u_zIvyF|Bt_!jVqn{>f*YjE_vKl}pvBr2t?DC1sZDZ@ z3oK?J#jTsNM1LAl$B~$HWh4z^Ay=F1F++!dlq;`Hq@_%99`~!q2&HszZ|k|H%U4<( zNB}h;odyy>D!OET>Bm6NymfzcGKuH^S7ZW&9p*Cn9IHYznW%G4Hy zU;CSc1p19<`$u>e4&vck!*5W`Sy1en3GmB9nO#unBkM z_!~Qy?vjw6b{QIifxfiTVY*s53fcIQZlRK}ARN_~120>KS6b69Ve$dgr`*?0_A38<$$~U{}KFJbJ zzfm;~bD~7Hta-9i>S4bkq#!v`qR*{g=O!WS`ZV2$Gk&aM1QR>B6jn340j{Ik{$z*( zS7McQhewd8&Z)NV>8d=aDs+f^<`&ih5njoch<>%x&?7Qux+#M+`!E(?=9kI~5mV{k z-7DW5^WzqmBD_H3pkkfRElKIV_fAw4ZMit=(0iGbbV}a`g+Q^6>m)tn(DdpxP5DMI zv>L7YgDaqQeur^@>vCv9fg*ku?6StPp9)^wGWdQTn?Jj=%j7{KarGjWBz(BHa^q*L zzR4<4=Vn6VK`&4uTO`hZcKeU*98s+R^gSXI>5^d|8w;<+Ow$rD)Lv)%4z8lL@G7VOekB}&(9y-N50Lq9ee z7f-BGgRKnP&zMI6IxCZ;?Gk;& zF5lKk*VN+Ls6jRLXM=;J;PG;QoCZd|H+HtJm$BH5RhyMxW`*gZ-Qdll{yQ=i8dCPd zIdWq7&ufqRNKyE?7-mfa@8)4}t(K`P{tq0<(!-x@V8yW(vgPM&AWT+&R80wcE4H>vR+W3N78{3%MSUuF zJi08FPnPQfF~tvKDfDSJG+*0!u8Uvn!;oWqk1W@D&QsUBJ>CMvE{q=r=K?Lkv5q6( zknE;`3w5GE3Wh%II|lWXY9WmjjN{G6ox)K-fIp->@`{t(+-&vGf>Z_V*fq_H835MN z2};uD{fpCiczYEOYvri)#k2%dPe0Y)S9=Gb@O#9!S{ZAoGFu(r@Ev zFRh8i!J;q9q7PotE_Y$3w-fZ|gkjdESE(ZYXaUW@s(wbS?VB_Hr!U|sFRDI1c@s`Y zWC^seg(P)$2ZFgffGhx6`Fl?NybnmO^22k&XJ8M$y5W_Gx%2yxo z+maQupYBH!<@fKS+<-CRw>;YN%FDOdluLgt1E=#1!sE;}w=O&qVaFyC;r202I!8sj zgYQi{(W#*|$p92+!c#u$Qp`;9293zmH8lODS*B`&zoc*HuF8^h zWxVf)HRlX{ZNc)=eG2q+iVjDl%mik+_gst=j-ydUI5Z2l?&^|_RU%An*Ni;h?;Bf- z`q{o1mof^7U$A2%(_bdZqwUAKtGK%dfFHO6;68dn2XN($quZQz{on3%gP$|T0C+b( zsuC~}`%Glk4PgTSns_ltEl<{(Xs?q(7PL5j>wTY|Czs*F)0&AoR^5j$@{a7wEBfsM zn4ilc9%HnQmdGJP=ABZKd!I+3>oCfH5|vF2Gf*yYti=Gb$y=olf7P=t!**T=DDE!D z8x1Gy{#b_~_36KfaG0o@@0YcQq=7kWMp#6hEPHNy18qiBTGC>;fXbkkHYGKu@iuGg z)|aFRu{ce*F9!Z|T>llBin9<{WNj!fC0Npm2 zxfsEG(O1+dwz^$Ac|K#p>O^Accek8x(n8J<)*b@PQ)YpRdRKc*h(YX z(yExCwoOw&&6lPjp5w6FO@K`Guc1)Aw`Dto%}IZQu(sYssYoZ}5xhK>q#Pyc) z&qFVRhxC3M&c4BK-j)OKQO+c)Hr-zt8QU(%ZB`!4VoYLy!Q7YeGUiIa&in2>62VbU)eHgVY%7Z zJ`xHmJ;JT$S%K{FiL^2}n%|D+(YCpE-R;f}lWuLi$A;_-UW(~Z7bo%<%LBUFfAXdE zY>(w_3K?3narCg2sEUgWAz^{0GfcXmoGJ}WIevNnwjnJ#@;I-`$<(f%m_ParF^g3t z6|>)e+}RydYZ|n_t8#Q?q{Mi5CNz5qe6$+Ve};JXPU;;s<5o&8oD(x7SSGIQX{!Q65Q+H@Ujbe z%A_Lk{7P$aZ2ZM-iDNipk#}#HLe=f`takdmaYK zi@GBF&9&qI>~#$VIb-K54N9B1S=a(;Z$BX3J5C){*~|j2mmY|}d<0BwHdz+uo5IfM z8H^MacZnLQ%G-8_QyUGSIQGPR3qbv|=>b6S1R6m*rdnMlZ+y(-Qr9eW=OSCX8awRj z^?ng(`^(54p6}Fa)2-?!Px{@xhw;5h0)JPDqdKPmg0NXKd>s2pM0~Y`>q&t~i*p~E zZ?%drzKN41d$Xd>F>L!Hvj_s7(L>!PYvT64h57;-WK{5ZBjGMToUy5-3N^Smf86T> z;EVaxRjIyRK9xIm!ghW4Ge{_an=4VRKa8y{yswx6eB|3@VRQi$u5>y(;$sTVA*Qma z^gAric_BGKPX(Pi$89k1A5CrkL1@*aN+50ZSA$k$fnVG2yS6y)N2kbS-89#jg(>^( z-%_dg8{hhKG7EuocXGMrv{wfR80fN+1YOqa*7~T|gEx$^H9b^zu1P?wOF=0#Q<3gd zA3SU#OTalQVMmc2w&8M}&9M^wxarAy+7sM$JV5?0zyF5o&+Z1nhLTKo#nN3Wmd*90dCH-bP5BvY$l!;UeI?wF5T5T*P0 zMz|_qt2`8>!i35Ov4A^*bJv;N7h?j>ujvzCe1C^u4d28Mb0rsK!_Fld?;TF9_+Y4G z5zB-03e~J#AFnV%JO;!HEY!eWfUhBh_S>Cq(|d8U-3ySgeWFy9$T-q+bG*z*j;W4N z;r>?Ix8cFjYp)D(^L+5aDI?tVIfr_m5%mFDr)qS*h&d-tX+D;c&vf5O(H!(%UR(Fo zk}D^^j*6@WP0?Q)%{~e{ahi2m!3)jzBcKpK(M(8%9chFjS%O0(l`RqSvfvtRLIuwJ zf0H|e=J8CrPm}la!|U5WFw%e%E1durHU)4)1>M+QXjc9m$=eV;gL*Kyzyg zJ0=`qN*bP0CG~?qcQfe#sluN*wB4vSw`<;Ns|j~*7w}jaSnO|9Thzit_oIK8nLn>b zKA-yuag)cUxBx5)5zwiUjJ|)q$?XB;knRsYQq&c1Cy)MlU#~+56C)!7icyAre&E;s zq2t%gbdlFv8Vp2iv5;zNbi6lvEk^ipq42nxZk+gZ7qmG`IB?QrdLzbqBS@DNMg4_mU3bBO7? z6~(76AbbH=dA-=^HM0{Y!SY361oX9jRn3`oo%He}xTh~zDVuC+VQ1BHx12#zy7ES< zmSFT*e9p_o_+e0F&|j>272 z{>nvY)hHw$s$NCE1 zD{C8_S)gZc)-Y8Yoi9)fEO(odFx^^k8m4nC)jYPn^K>Glm7!_fq)7J} z(V=r)GqMs*BV})(@Y_9H>sV12NK+L0vQfe^NyScaGTH}_p_J((r(~b~TLmkaI1I7A zh_j64)amLFK7DKU?{iar^ptMP+-#j&&gHgd6qsQwlC*rCH07tkf0gt#cX&n$s^mme z2uU6VK`GN=$KDH$Tn1EmNxC2bs)BQe6t9yLu+;vOw40Sbs@cs<{hoB?21}B55g(nt zQ=)pcgy-ZHFLr<*&Vs~Pz&Q49bWMAGIi=~YyJQwHOjSO)>dhcp0v;Qw_a6s4s2}!~d=3sAKOWVjB>!xmGvxrkJU^g1sO)ZihP^ zma#fo)hSliSWf@x|1RhjwZZlG)jyuKHJ=^Ir0!@qO0Q^EKum;z4D-C_7dZBGUIzqq zN6Ds;R#9-+SIeHF%A%$!s`kMPcz65Mnp!IBCE6@^BjEov>X=^UvZl0VqcEyTxuPEN zCmqa!ywfv!AG@7hBJk)*`st*P?qn@o0Og|#2KjWNFm7?nZ*{T|F1OGNXc+5wsKr~G z=iF)`>U_bpIA4GEDX@IZtzNMjv(0f? zL8-kH7Yz9oKAko>0rnK{<>oScOD`wI#rX@K4*{B}MNJ#u&CTw=&*A?@TT+-E#wKiH z;J`K#vMg@ilk2?!W(@QN3nnZqWt-cpzmmK%V0k|O2Tx||q!mcGF{Js4zVs!h(}_(y zmF-S?k$K&ZA)(t2?&%C6eo5047kX4Mx9BiR-h9b-mS?V9>AO0<9Ip;PiDutJ)B9D{ z_GLEc`)?O@E_!IF2XA`z;b9K0iHgbwD0_$k4U{riaq_TcomxYZvXrErE&hP!4BL}sZROd~r^pRMcugvo& zt&(JeCN+&3;TAnr%5mb0O#?}sxuqmD-p}*cAoz^<|A;dT-+Ka3{+QYo<-4_9aDhb{ zq8i@0DVvwwLEL%ZmrM(w9+?c|>Q<2VHr zM;4BHHb}ZD|01bpdC?^D?}^?blyGpj^Bk;SXMSaQFUn*fa$=}d9qBqOj zeEi@(H!J}Vx|r4Ep4X42yOL}><2uPpqN)48Vrys^8DhUxe>u zlE|4Ro0&bo$Iz>G_Mt?E5&I!_FNXghb}?ioc1#I+-vfV&ysCJOgMnP=_5<%skK>|p z7XaE#9sev)go9+5&0TTVu7d0M<}(25)vGYF`GNW(cUf6}Z!65TibeQ{lc<)eHgJ$p zp9(M-eIL`phYKWdLLVr|FhvorI7!lSNLqePUKmIrw7$wxF@PxKL}&85A74&={H~8i z$99e2OgJUHm{Y?VJdrj)dEtDws!o&p$?x~1-X4d=te+iSGxu~Lj zb0RCHwZGUc^<-fFgTqx@0>F+WY3Z>0b%|E6el@m9=F{X2CNI*jhI=fj_Uy?#Qa0&e zo3L`TU8diBpPnGv&@))E&$t*4(Lb6yXB`a=?7mtpsc0Kg12>2T-c}>nSDjwZBNsSr>7$h?J z8QebgL}Y%0$+cJv-QOi0x??oYY)UPqKM8UiAVEh-%3q;zdw(X|e5IjUZN$3!HVp#$ zxRAl34n0^yW$3grYIMEfLAlk<))`?h*SK0#7$Z>&9K|S3*J;cGSk7PVG@9f>^Ky(p zXUJ>e;Kt8RAi#QC)c4++!}C0u&oj08z~NS9p1nwW^r&h5a4a-Jmxd77K?;@q(~CqCkjn%lqMPL-9@$bQ24}($U(_{hl9GW9_ILcMxWoq z^C(k}EB)Yj-1HW~+!A2HtV*V6ucMc&uiuMNr6+mgrXvWvM`Qpd#@Q8>=I%q})$y)YZr{rwECJSsG)vPQwZnsz*0ub?k zGCbMnV?kqaH#Ogf))>_2wVy)yy|qWqqkzl=qK(+KWix7*AueXOv^$?KN&6m*q7SJX z>S%vU2xrhW3a6}BSRIkJmN!k!oh4T#J4>E6X{1v6A;wtv&@w`#xPw7{F8WJ`9 z4Kyo#|0eG>wa%*X&O<={#a6;(DPtv@# zO@#vB+7fQxM;+~n&?1>;qC1w~G&0wzSl4VnDec9F~xt(J}$?dlje zO~BO%=+Sac{jk4O0Y5~5pBV5re`(h;A!J@j1K_<`x{dgT?SGg|CsGmTO|W88#OCnd zY8q!tdyEW$!i7(QivGB~3#0L%`Zmo2aRqX$1Vo3*E;=B;=pbLN89=ipL3r9PlVl@N zIYsn6G70}UcvQkntuOV``8`)Ql?!RoZQKGI(%sOuU3UPl4+Q^NDC!Vk^I3qz!hN{g z@Pni8b+q$-g5Sg}XHetB7f)eUy6$~f5D{`0az5cODUubi%2 zSPv>nU{uYgnc`{>-b+qI|L)%)#O-+xk)i3&P8D=OX4ez3Pd|i(4FRxWA#+ydoP74@ zdlUbYUwno)@J9Zdv_6_*IkFBP_Z#U;^fE*@Iox8UB}~xVR}vcI_A>nrf3nOY$6`M$ zl3+6f;atzvgN*~0q63hK;hU;dY0_-(>@*&GJ5;wsl%v>q_Zb|=>XpW@1WT&aOfy0u z5vDTf{9ZHj%<%f$M~f#%^vzMQnAh4POMy~Z*FrAxVxkMYuAUZ`zFq`{y-WG-;wWTo zxAcouR1nGbh4JHwwY(7R_Gvi!^^bv`LSo`5cIhtps4}02jdyEs;1{$<8^N!CTJI+@a(%45NoESW$B-#7tTcYSorP(_A#v*9bv4ftM8f zw-E5xIqEMH+)dQzKApN~WQ8$8ipOD$y~73p3ib+Ha+1=R?IEB>mpgstgJ^5JM!apm zB7^ntxNxy%DF57Bz;FuU&|pE%R@D724EO&L8G^3Rzx>z+8eRl_9y$q0$Z+_@94s5sT^8X0{v*uviuA7-O*Z4Dd z41>L|Dym&MbEsqsV+hJ}lk)WGeyeq?*Yveii6-6qWV`ck@fQx_Bo^FfXqyR>kW>ti zzo2Tm$*3EImg`tF>f#KG#W}iNxdT~X8HFD`VWRpC6hl;>i1G<)ae%jwse48oxyLkW z&o=UVQYF>aJpYXLktm5@CE0MG57GnB8rLQ|!PC6`k71EriQDtnZ*f^5Le`lmX|bUG zs8j`M`7b;i=rBT6ADl~8Qf@SDW_0anC%qLg;7fd#4vkc0})#$3>UFkcMybA zeI!osc?-K|y$MEa!SJt!JXm{B$lC?SISRwpxDf?)%K5EqkTW z`rCh@b1fPNNLDohNLOf^>KUu-ij1z7>;EZDU#8Jn{z3id3 zp1qjkjm4)v7}z|Y=H=~Tb>UV2JbS&XZtY@A_cZYyYujKhp-?8lbd|a8;6{O4N_r_m zzE0)Nj<+%i%7)-$)m%giMf^ksDg^Bst{J$%`317k@ukI@MQ5(zHjzxIXC XrJNsHnTG=pQeg0O^>bP0l+XkK^)z{o literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..3f8a57f38e0273699c8cdd1012042bffdc38abce GIT binary patch literal 40510 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

C z(CX6fIh8mroxe4Fy?l{bj%8R307X*fDQ#(v@y+x%4>XY?ax zC^p*eaCfrcq#aa-hT`A*7=V1wKdlx2BoX`y?{jb4s1j@)b7-etD6E@cKXx@8e&Vf zWehdcr8jm&_uNAX*$0NY%B&gn)>)@jQLcO5F3UZEr zds`B64=#T7qE6myk{5rNg+99@E{Zf&GEI$b?&PagH-fv#5k*V6EEmp!A*tE}RWk_SsM5#wN>{l7X5DBVl)bv~bNp*#NXY*I)h$Ng literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..b18bceb64d257ed31d50e65d7f2b98abcfb21158 GIT binary patch literal 16751 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 XrJNsHnTG=pQeg0O^>bP0l+XkK^)z{o literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values-night/themes.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values-night/themes.xml new file mode 100644 index 00000000..7cd5d350 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values-night/themes.xml @@ -0,0 +1,16 @@ + + + + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/colors.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/colors.xml new file mode 100644 index 00000000..f8c6127d --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/colors.xml @@ -0,0 +1,10 @@ + + + #FFBB86FC + #FF6200EE + #FF3700B3 + #FF03DAC5 + #FF018786 + #FF000000 + #FFFFFFFF + \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/strings.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/strings.xml new file mode 100644 index 00000000..f664d9a2 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/strings.xml @@ -0,0 +1,4 @@ + + Tauri Camera + Camera + \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/themes.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/themes.xml new file mode 100644 index 00000000..04239cf4 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/values/themes.xml @@ -0,0 +1,16 @@ + + + + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/xml/file_paths.xml b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/xml/file_paths.xml new file mode 100644 index 00000000..782d63b9 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/src/main/res/xml/file_paths.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/tauri.build.gradle.kts b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/tauri.build.gradle.kts new file mode 100644 index 00000000..27d35939 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/app/tauri.build.gradle.kts @@ -0,0 +1,8 @@ +// THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. + +val implementation by configurations + +dependencies { + implementation(project(":tauri-plugin-camera")) + +} diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/build.gradle.kts b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/build.gradle.kts new file mode 100644 index 00000000..8c6fe584 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/build.gradle.kts @@ -0,0 +1,25 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +buildscript { + repositories { + google() + mavenCentral() + } + dependencies { + classpath("com.android.tools.build:gradle:7.3.1") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.10") + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + google() + mavenCentral() + } +} + +tasks.register("clean").configure { + delete("build") +} + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/build.gradle.kts b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/build.gradle.kts new file mode 100644 index 00000000..2713738b --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/build.gradle.kts @@ -0,0 +1,23 @@ +plugins { + `kotlin-dsl` +} + +gradlePlugin { + plugins { + create("pluginsForCoolKids") { + id = "rustPlugin" + implementationClass = "app.tauri.RustPlugin" + } + } +} + +repositories { + google() + mavenCentral() +} + +dependencies { + compileOnly(gradleApi()) + implementation("com.android.tools.build:gradle:7.3.1") +} + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/BuildTask.kt b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/BuildTask.kt new file mode 100644 index 00000000..c1f75733 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/BuildTask.kt @@ -0,0 +1,43 @@ +package app.tauri + +import java.io.File +import org.gradle.api.DefaultTask +import org.gradle.api.GradleException +import org.gradle.api.logging.LogLevel +import org.gradle.api.tasks.Input +import org.gradle.api.tasks.InputDirectory +import org.gradle.api.tasks.PathSensitive +import org.gradle.api.tasks.PathSensitivity +import org.gradle.api.tasks.TaskAction + +open class BuildTask : DefaultTask() { + @InputDirectory + @PathSensitive(PathSensitivity.RELATIVE) + var rootDirRel: File? = null + @Input + var target: String? = null + @Input + var release: Boolean? = null + + @TaskAction + fun build() { + val rootDirRel = rootDirRel ?: throw GradleException("rootDirRel cannot be null") + val target = target ?: throw GradleException("target cannot be null") + val release = release ?: throw GradleException("release cannot be null") + project.exec { + workingDir(File(project.projectDir, rootDirRel.path)) + executable("""pnpm""") + args(listOf("run", "tauri", "android", "android-studio-script")) + if (project.logger.isEnabled(LogLevel.DEBUG)) { + args("-vv") + } else if (project.logger.isEnabled(LogLevel.INFO)) { + args("-v") + } + if (release) { + args("--release") + } + args(listOf("--target", target)) + }.assertNormalExitValue() + } +} + diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/RustPlugin.kt b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/RustPlugin.kt new file mode 100644 index 00000000..f40ad054 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/buildSrc/src/main/java/app/tauri/app/kotlin/RustPlugin.kt @@ -0,0 +1,59 @@ +package app.tauri + +import org.gradle.api.DefaultTask +import org.gradle.api.GradleException +import org.gradle.api.Plugin +import org.gradle.api.Project +import java.io.File +import java.util.* + +const val TASK_GROUP = "rust" + +open class Config { + var rootDirRel: String? = null + var targets: List? = null + var arches: List? = null +} + +open class RustPlugin : Plugin { + private lateinit var config: Config + + override fun apply(project: Project) { + config = project.extensions.create("rust", Config::class.java) + project.afterEvaluate { + if (config.targets == null) { + throw GradleException("targets cannot be null") + } + if (config.arches == null) { + throw GradleException("arches cannot be null") + } + for (profile in listOf("debug", "release")) { + val profileCapitalized = profile.capitalize(Locale.ROOT) + val buildTask = project.tasks.maybeCreate( + "rustBuild$profileCapitalized", + DefaultTask::class.java + ).apply { + group = TASK_GROUP + description = "Build dynamic library in $profile mode for all targets" + } + for (targetPair in config.targets!!.withIndex()) { + val targetName = targetPair.value + val targetArch = config.arches!![targetPair.index] + val targetArchCapitalized = targetArch.capitalize(Locale.ROOT) + val targetBuildTask = project.tasks.maybeCreate( + "rustBuild$targetArchCapitalized$profileCapitalized", + BuildTask::class.java + ).apply { + group = TASK_GROUP + description = "Build dynamic library in $profile mode for $targetArch" + rootDirRel = config.rootDirRel?.let { File(it) } + target = targetName + release = profile == "release" + } + buildTask.dependsOn(targetBuildTask) + project.tasks.findByName("preBuild")?.mustRunAfter(targetBuildTask) + } + } + } + } +} diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle.properties b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle.properties new file mode 100644 index 00000000..cd0519bb --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle.properties @@ -0,0 +1,23 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app"s APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +# Kotlin code style for this project: "official" or "obsolete": +kotlin.code.style=official +# Enables namespacing of each library's R class so that its R class includes only the +# resources declared in the library itself and none from the library's dependencies, +# thereby reducing the size of the R class for that library +android.nonTransitiveRClass=true \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle/wrapper/gradle-wrapper.jar b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..e708b1c023ec8b20f512888fe07c5bd3ff77bb8f GIT binary patch literal 59203 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

K7UpUK$>l@ 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 E2O(~oYXATM literal 0 HcmV?d00001 diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle/wrapper/gradle-wrapper.properties b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 00000000..de8c362b --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Tue May 10 19:22:52 CST 2022 +distributionBase=GRADLE_USER_HOME +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip +distributionPath=wrapper/dists +zipStorePath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew new file mode 100755 index 00000000..4f906e0c --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew @@ -0,0 +1,185 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=`expr $i + 1` + done + case $i in + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=`save "$@"` + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +exec "$JAVACMD" "$@" diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew.bat b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew.bat new file mode 100644 index 00000000..ac1b06f9 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/settings.gradle b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/settings.gradle new file mode 100644 index 00000000..a1a06b10 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/settings.gradle @@ -0,0 +1,6 @@ +include ':app' + +include ':tauri-android' +project(':tauri-android').projectDir = new File('./tauri-api') + +apply from: 'tauri.settings.gradle' diff --git a/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/tauri.settings.gradle b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/tauri.settings.gradle new file mode 100644 index 00000000..d07d8e7f --- /dev/null +++ b/plugins/camera/examples/tauri-app/src-tauri/gen/android/app/tauri.settings.gradle @@ -0,0 +1,3 @@ +// THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +include ':tauri-plugin-camera' +project(':tauri-plugin-camera').projectDir = new File('./tauri-plugins/tauri-plugin-camera') \ No newline at end of file diff --git a/plugins/camera/examples/tauri-app/src-tauri/icons/128x128.png b/plugins/camera/examples/tauri-app/src-tauri/icons/128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..77e7d2338e9d8ccffc731198dc584906627c903f GIT binary patch literal 11059 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�{Kmc5tGtrHLwPd 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౉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 z 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

j#(n6`cTK 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 + import GetPhoto from "./lib/GetPhoto.svelte"; + + +
+
+ +
+
diff --git a/plugins/camera/examples/tauri-app/src/lib/GetPhoto.svelte b/plugins/camera/examples/tauri-app/src/lib/GetPhoto.svelte new file mode 100644 index 00000000..709e49a2 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src/lib/GetPhoto.svelte @@ -0,0 +1,31 @@ + + +
+ {#if imageSrc} + Selected + {/if} + +
+ + diff --git a/plugins/camera/examples/tauri-app/src/main.js b/plugins/camera/examples/tauri-app/src/main.js new file mode 100644 index 00000000..6b4e1a96 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src/main.js @@ -0,0 +1,8 @@ +import "./style.css"; +import App from "./App.svelte"; + +const app = new App({ + target: document.getElementById("app"), +}); + +export default app; diff --git a/plugins/camera/examples/tauri-app/src/style.css b/plugins/camera/examples/tauri-app/src/style.css new file mode 100644 index 00000000..c0f9e3bc --- /dev/null +++ b/plugins/camera/examples/tauri-app/src/style.css @@ -0,0 +1,102 @@ +:root { + font-family: Inter, Avenir, Helvetica, Arial, sans-serif; + font-size: 16px; + line-height: 24px; + font-weight: 400; + + color: #0f0f0f; + background-color: #f6f6f6; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; +} + +.container { + margin: 0; + padding-top: 10vh; + display: flex; + flex-direction: column; + justify-content: center; + text-align: center; +} + +.logo { + height: 6em; + padding: 1.5em; + will-change: filter; + transition: 0.75s; +} + +.logo.tauri:hover { + filter: drop-shadow(0 0 2em #24c8db); +} + +.row { + display: flex; + justify-content: center; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} + +a:hover { + color: #535bf2; +} + +h1 { + text-align: center; +} + +input, +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + color: #0f0f0f; + background-color: #ffffff; + transition: border-color 0.25s; + box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2); +} + +button { + cursor: pointer; +} + +button:hover { + border-color: #396cd8; +} + +input, +button { + outline: none; +} + +#greet-input { + margin-right: 5px; +} + +@media (prefers-color-scheme: dark) { + :root { + color: #f6f6f6; + background-color: #2f2f2f; + } + + a:hover { + color: #24c8db; + } + + input, + button { + color: #ffffff; + background-color: #0f0f0f98; + } +} diff --git a/plugins/camera/examples/tauri-app/src/vite-env.d.ts b/plugins/camera/examples/tauri-app/src/vite-env.d.ts new file mode 100644 index 00000000..4078e747 --- /dev/null +++ b/plugins/camera/examples/tauri-app/src/vite-env.d.ts @@ -0,0 +1,2 @@ +/// +/// diff --git a/plugins/camera/examples/tauri-app/vite.config.js b/plugins/camera/examples/tauri-app/vite.config.js new file mode 100644 index 00000000..b7427654 --- /dev/null +++ b/plugins/camera/examples/tauri-app/vite.config.js @@ -0,0 +1,40 @@ +import { defineConfig } from "vite"; +import { svelte } from "@sveltejs/vite-plugin-svelte"; +import { internalIpV4 } from "internal-ip"; + +// https://vitejs.dev/config/ +export default defineConfig(async () => { + const host = process.env.TAURI_PLATFORM === 'android' || process.env.TAURI_PLATFORM === 'ios' ? (await internalIpV4()) : 'localhost' + return { + plugins: [svelte()], + + // Vite optons tailored for Tauri development and only applied in `tauri dev` or `tauri build` + // prevent vite from obscuring rust errors + clearScreen: false, + // tauri expects a fixed port, fail if that port is not available + server: { + host: '0.0.0.0', + port: 5173, + strictPort: true, + hmr: { + protocol: 'ws', + host, + port: 5183 + }, + fs: { + allow: ['.', '../../tooling/api/dist'] + } + }, + // to make use of `TAURI_DEBUG` and other env variables + // https://tauri.studio/v1/api/config#buildconfig.beforedevcommand + envPrefix: ["VITE_", "TAURI_"], + build: { + // Tauri supports es2021 + target: ["es2021", "chrome100", "safari13"], + // don't minify for debug builds + minify: !process.env.TAURI_DEBUG ? "esbuild" : false, + // produce sourcemaps for debug builds + sourcemap: !!process.env.TAURI_DEBUG, + }, + } +}); diff --git a/plugins/camera/guest-js/index.ts b/plugins/camera/guest-js/index.ts new file mode 100644 index 00000000..be4fc462 --- /dev/null +++ b/plugins/camera/guest-js/index.ts @@ -0,0 +1,50 @@ +// Copyright 2019-2022 Tauri Programme within The Commons Conservancy +// SPDX-License-Identifier: Apache-2.0 +// SPDX-License-Identifier: MIT +import { invoke } from '@tauri-apps/api/tauri' + +export enum Source { + Prompt = 'PROMPT', + Camera = 'CAMERA', + Photos = 'PHOTOS' +} + +export enum ResultType { + Uri = 'uri', + Base64 = 'base64', + DataUrl = 'dataUrl' +} + +export enum CameraDirection { + Rear = 'REAR', + Front = 'FRONT' +} + +export interface ImageOptions { + quality?: number + allowEditing?: boolean + resultType?: ResultType + saveToGallery?: boolean + width?: number + height?: number + correctOrientation?: boolean + source?: Source + direction?: CameraDirection + presentationStyle?: 'fullscreen' | 'popover' + promptLabelHeader?: string + promptLabelCancel?: string + promptLabelPhoto?: string + promptLabelPicture?: string +} + +export interface Image { + data: string + assetUrl?: string + format: string + saved: boolean + exif: unknown +} + +export async function getPhoto(options?: ImageOptions): Promise { + return await invoke('plugin:camera|getPhoto', { ...options }) +} diff --git a/plugins/camera/ios/.gitignore b/plugins/camera/ios/.gitignore new file mode 100644 index 00000000..7d98e3ad --- /dev/null +++ b/plugins/camera/ios/.gitignore @@ -0,0 +1,11 @@ +.DS_Store +/.build +/Packages +/*.xcodeproj +xcuserdata/ +DerivedData/ +.swiftpm/config/registries.json +.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata +.netrc +Package.resolved +/tauri-api diff --git a/plugins/camera/ios/Package.swift b/plugins/camera/ios/Package.swift new file mode 100644 index 00000000..45b30dc2 --- /dev/null +++ b/plugins/camera/ios/Package.swift @@ -0,0 +1,31 @@ +// swift-tools-version:5.7 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "tauri-plugin-camera", + platforms: [ + .iOS(.v11), + ], + products: [ + // Products define the executables and libraries a package produces, and make them visible to other packages. + .library( + name: "tauri-plugin-camera", + type: .static, + targets: ["tauri-plugin-camera"]), + ], + dependencies: [ + .package(name: "Tauri", path: "../../../../../core/tauri/mobile/ios-api") + ], + targets: [ + // Targets are the basic building blocks of a package. A target can define a module or a test suite. + // Targets can depend on other targets in this package, and on products in packages this package depends on. + .target( + name: "tauri-plugin-camera", + dependencies: [ + .byName(name: "Tauri") + ], + path: "Sources") + ] +) diff --git a/plugins/camera/ios/README.md b/plugins/camera/ios/README.md new file mode 100644 index 00000000..5293ed5b --- /dev/null +++ b/plugins/camera/ios/README.md @@ -0,0 +1,3 @@ +# Tauri Plugin camera + +A description of this package. diff --git a/plugins/camera/ios/Sources/CameraExtensions.swift b/plugins/camera/ios/Sources/CameraExtensions.swift new file mode 100644 index 00000000..938b61c0 --- /dev/null +++ b/plugins/camera/ios/Sources/CameraExtensions.swift @@ -0,0 +1,105 @@ +import UIKit +import Photos + +internal protocol CameraAuthorizationState { + var authorizationState: String { get } +} + +extension AVAuthorizationStatus: CameraAuthorizationState { + var authorizationState: String { + switch self { + case .denied, .restricted: + return "denied" + case .authorized: + return "granted" + case .notDetermined: + fallthrough + @unknown default: + return "prompt" + } + } +} + +extension PHAuthorizationStatus: CameraAuthorizationState { + var authorizationState: String { + switch self { + case .denied, .restricted: + return "denied" + case .authorized: + return "granted" + #if swift(>=5.3) + // poor proxy for Xcode 12/iOS 14, should be removed once building with Xcode 12 is required + case .limited: + return "limited" + #endif + case .notDetermined: + fallthrough + @unknown default: + return "prompt" + } + } +} + +internal extension PHAsset { + /** + Retrieves the image metadata for the asset. + */ + var imageData: [String: Any] { + let options = PHImageRequestOptions() + options.isSynchronous = true + options.resizeMode = .none + options.isNetworkAccessAllowed = false + options.version = .current + + var result: [String: Any] = [:] + _ = PHCachingImageManager().requestImageDataAndOrientation(for: self, options: options) { (data, _, _, _) in + if let data = data as NSData? { + let options = [kCGImageSourceShouldCache as String: kCFBooleanFalse] as CFDictionary + if let imgSrc = CGImageSourceCreateWithData(data, options), + let metadata = CGImageSourceCopyPropertiesAtIndex(imgSrc, 0, options) as? [String: Any] { + result = metadata + } + } + } + return result + } +} + +internal extension UIImage { + /** + Generates a new image from the existing one, implicitly resetting any orientation. + Dimensions greater than 0 will resize the image while preserving the aspect ratio. + */ + func reformat(to size: CGSize? = nil) -> UIImage { + let imageHeight = self.size.height + let imageWidth = self.size.width + // determine the max dimensions, 0 is treated as 'no restriction' + var maxWidth: CGFloat + if let size = size, size.width > 0 { + maxWidth = size.width + } else { + maxWidth = imageWidth + } + let maxHeight: CGFloat + if let size = size, size.height > 0 { + maxHeight = size.height + } else { + maxHeight = imageHeight + } + // adjust to preserve aspect ratio + var targetWidth = min(imageWidth, maxWidth) + var targetHeight = (imageHeight * targetWidth) / imageWidth + if targetHeight > maxHeight { + targetWidth = (imageWidth * maxHeight) / imageHeight + targetHeight = maxHeight + } + // generate the new image and return + let format: UIGraphicsImageRendererFormat = UIGraphicsImageRendererFormat.default() + format.scale = 1.0 + format.opaque = false + let renderer = UIGraphicsImageRenderer(size: CGSize(width: targetWidth, height: targetHeight), format: format) + return renderer.image { (_) in + self.draw(in: CGRect(origin: .zero, size: CGSize(width: targetWidth, height: targetHeight))) + } + } +} \ No newline at end of file diff --git a/plugins/camera/ios/Sources/CameraPlugin.swift b/plugins/camera/ios/Sources/CameraPlugin.swift new file mode 100644 index 00000000..aca9ad2d --- /dev/null +++ b/plugins/camera/ios/Sources/CameraPlugin.swift @@ -0,0 +1,576 @@ +import UIKit +import WebKit +import Tauri +import Photos +import PhotosUI + +public class CameraPlugin: Plugin { + private var invoke: Invoke? + private var settings = CameraSettings() + private let defaultSource = CameraSource.prompt + private let defaultDirection = CameraDirection.rear + private var multiple = false + + private var imageCounter = 0 + + @objc override public func checkPermissions(_ invoke: Invoke) { + var result: [String: Any] = [:] + for permission in CameraPermissionType.allCases { + let state: String + switch permission { + case .camera: + state = AVCaptureDevice.authorizationStatus(for: .video).authorizationState + case .photos: + if #available(iOS 14, *) { + state = PHPhotoLibrary.authorizationStatus(for: .readWrite).authorizationState + } else { + state = PHPhotoLibrary.authorizationStatus().authorizationState + } + } + result[permission.rawValue] = state + } + invoke.resolve(result) + } + + @objc override public func requestPermissions(_ invoke: Invoke) { + // get the list of desired types, if passed + let typeList = invoke.getArray("permissions", String.self)?.compactMap({ (type) -> CameraPermissionType? in + return CameraPermissionType(rawValue: type) + }) ?? [] + // otherwise check everything + let permissions: [CameraPermissionType] = (typeList.count > 0) ? typeList : CameraPermissionType.allCases + // request the permissions + let group = DispatchGroup() + for permission in permissions { + switch permission { + case .camera: + group.enter() + AVCaptureDevice.requestAccess(for: .video) { _ in + group.leave() + } + case .photos: + group.enter() + if #available(iOS 14, *) { + PHPhotoLibrary.requestAuthorization(for: .readWrite) { (_) in + group.leave() + } + } else { + PHPhotoLibrary.requestAuthorization({ (_) in + group.leave() + }) + } + } + } + group.notify(queue: DispatchQueue.main) { [weak self] in + self?.checkPermissions(invoke) + } + } + + @objc func pickLimitedLibraryPhotos(_ invoke: Invoke) { + if #available(iOS 14, *) { + PHPhotoLibrary.requestAuthorization(for: .readWrite) { (granted) in + if granted == .limited { + if let viewController = self.manager.viewController { + if #available(iOS 15, *) { + PHPhotoLibrary.shared().presentLimitedLibraryPicker(from: viewController) { _ in + self.getLimitedLibraryPhotos(invoke) + } + } else { + PHPhotoLibrary.shared().presentLimitedLibraryPicker(from: viewController) + invoke.resolve([ + "photos": [] + ]) + } + } + } else { + invoke.resolve([ + "photos": [] + ]) + } + } + } else { + invoke.unavailable("Not available on iOS 13") + } + } + + @objc func getLimitedLibraryPhotos(_ invoke: Invoke) { + if #available(iOS 14, *) { + PHPhotoLibrary.requestAuthorization(for: .readWrite) { (granted) in + if granted == .limited { + + self.invoke = invoke + + DispatchQueue.global(qos: .utility).async { + let assets = PHAsset.fetchAssets(with: .image, options: nil) + var processedImages: [ProcessedImage] = [] + + let imageManager = PHImageManager.default() + let options = PHImageRequestOptions() + options.deliveryMode = .highQualityFormat + + let group = DispatchGroup() + + for index in 0...(assets.count - 1) { + let asset = assets.object(at: index) + let fullSize = CGSize(width: asset.pixelWidth, height: asset.pixelHeight) + + group.enter() + imageManager.requestImage(for: asset, targetSize: fullSize, contentMode: .default, options: options) { image, _ in + guard let image = image else { + group.leave() + return + } + processedImages.append(self.processedImage(from: image, with: asset.imageData)) + group.leave() + } + } + + group.notify(queue: .global(qos: .utility)) { [weak self] in + self?.returnImages(processedImages) + } + } + } else { + invoke.resolve([ + "photos": [] + ]) + } + } + } else { + invoke.unavailable("Not available on iOS 13") + } + } + + @objc func getPhoto(_ invoke: Invoke) { + self.multiple = false + self.invoke = invoke + self.settings = cameraSettings(from: invoke) + + // Make sure they have all the necessary info.plist settings + if let missingUsageDescription = checkUsageDescriptions() { + Logger.error("[PLUGIN]", "Camera", "-", missingUsageDescription) + invoke.reject(missingUsageDescription) + return + } + + DispatchQueue.main.async { + switch self.settings.source { + case .prompt: + self.showPrompt() + case .camera: + self.showCamera() + case .photos: + self.showPhotos() + } + } + } + + @objc func pickImages(_ invoke: Invoke) { + self.multiple = true + self.invoke = invoke + self.settings = cameraSettings(from: invoke) + DispatchQueue.main.async { + self.showPhotos() + } + } + + private func checkUsageDescriptions() -> String? { + if let dict = Bundle.main.infoDictionary { + for key in CameraPropertyListKeys.allCases where dict[key.rawValue] == nil { + return key.missingMessage + } + } + return nil + } + + private func cameraSettings(from invoke: Invoke) -> CameraSettings { + var settings = CameraSettings() + settings.jpegQuality = min(abs(CGFloat(invoke.getFloat("quality") ?? 100.0)) / 100.0, 1.0) + settings.allowEditing = invoke.getBool("allowEditing") ?? false + settings.source = CameraSource(rawValue: invoke.getString("source") ?? defaultSource.rawValue) ?? defaultSource + settings.direction = CameraDirection(rawValue: invoke.getString("direction") ?? defaultDirection.rawValue) ?? defaultDirection + if let typeString = invoke.getString("resultType"), let type = CameraResultType(rawValue: typeString) { + settings.resultType = type + } + settings.saveToGallery = invoke.getBool("saveToGallery") ?? false + + // Get the new image dimensions if provided + settings.width = CGFloat(invoke.getInt("width") ?? 0) + settings.height = CGFloat(invoke.getInt("height") ?? 0) + if settings.width > 0 || settings.height > 0 { + // We resize only if a dimension was provided + settings.shouldResize = true + } + settings.shouldCorrectOrientation = invoke.getBool("correctOrientation") ?? true + settings.userPromptText = CameraPromptText(title: invoke.getString("promptLabelHeader"), + photoAction: invoke.getString("promptLabelPhoto"), + cameraAction: invoke.getString("promptLabelPicture"), + cancelAction: invoke.getString("promptLabelCancel")) + if let styleString = invoke.getString("presentationStyle"), styleString == "popover" { + settings.presentationStyle = .popover + } else { + settings.presentationStyle = .fullScreen + } + + return settings + } +} + +// public delegate methods +extension CameraPlugin: UIImagePickerControllerDelegate, UINavigationControllerDelegate, UIPopoverPresentationControllerDelegate { + public func imagePickerControllerDidCancel(_ picker: UIImagePickerController) { + picker.dismiss(animated: true) + self.invoke?.reject("User cancelled photos app") + } + + public func popoverPresentationControllerDidDismissPopover(_ popoverPresentationController: UIPopoverPresentationController) { + self.invoke?.reject("User cancelled photos app") + } + + public func presentationControllerDidDismiss(_ presentationController: UIPresentationController) { + self.invoke?.reject("User cancelled photos app") + } + + public func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey: Any]) { + picker.dismiss(animated: true) { + if let processedImage = self.processImage(from: info) { + self.returnProcessedImage(processedImage) + } else { + self.invoke?.reject("Error processing image") + } + } + } +} + +@available(iOS 14, *) +extension CameraPlugin: PHPickerViewControllerDelegate { + public func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) { + picker.dismiss(animated: true, completion: nil) + guard let result = results.first else { + self.invoke?.reject("User cancelled photos app") + return + } + if multiple { + var images: [ProcessedImage] = [] + var processedCount = 0 + for img in results { + guard img.itemProvider.canLoadObject(ofClass: UIImage.self) else { + self.invoke?.reject("Error loading image") + return + } + // extract the image + img.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (reading, _) in + if let image = reading as? UIImage { + var asset: PHAsset? + if let assetId = img.assetIdentifier { + asset = PHAsset.fetchAssets(withLocalIdentifiers: [assetId], options: nil).firstObject + } + if let processedImage = self?.processedImage(from: image, with: asset?.imageData) { + images.append(processedImage) + } + processedCount += 1 + if processedCount == results.count { + self?.returnImages(images) + } + } else { + self?.invoke?.reject("Error loading image") + } + } + } + + } else { + guard result.itemProvider.canLoadObject(ofClass: UIImage.self) else { + self.invoke?.reject("Error loading image") + return + } + // extract the image + result.itemProvider.loadObject(ofClass: UIImage.self) { [weak self] (reading, _) in + if let image = reading as? UIImage { + var asset: PHAsset? + if let assetId = result.assetIdentifier { + asset = PHAsset.fetchAssets(withLocalIdentifiers: [assetId], options: nil).firstObject + } + if var processedImage = self?.processedImage(from: image, with: asset?.imageData) { + processedImage.flags = .gallery + self?.returnProcessedImage(processedImage) + return + } + } + self?.invoke?.reject("Error loading image") + } + } + } +} + +private extension CameraPlugin { + func returnImage(_ processedImage: ProcessedImage, isSaved: Bool) { + guard let jpeg = processedImage.generateJPEG(with: settings.jpegQuality) else { + self.invoke?.reject("Unable to convert image to jpeg") + return + } + + if settings.resultType == CameraResultType.uri || multiple { + guard let fileURL = try? saveTemporaryImage(jpeg), + let webURL = manager.assetUrl(fromLocalURL: fileURL) else { + invoke?.reject("Unable to get asset URL to file") + return + } + if self.multiple { + invoke?.resolve([ + "photos": [[ + "data": fileURL.absoluteString, + "exif": processedImage.exifData, + "assetUrl": webURL.absoluteString, + "format": "jpeg" + ]] + ]) + return + } + invoke?.resolve([ + "data": fileURL.absoluteString, + "exif": processedImage.exifData, + "assetUrl": webURL.absoluteString, + "format": "jpeg", + "saved": isSaved + ]) + } else if settings.resultType == CameraResultType.base64 { + self.invoke?.resolve([ + "data": jpeg.base64EncodedString(), + "exif": processedImage.exifData, + "format": "jpeg", + "saved": isSaved + ]) + } else if settings.resultType == CameraResultType.dataURL { + invoke?.resolve([ + "data": "data:image/jpeg;base64," + jpeg.base64EncodedString(), + "exif": processedImage.exifData, + "format": "jpeg", + "saved": isSaved + ]) + } + } + + func returnImages(_ processedImages: [ProcessedImage]) { + var photos: [JsonObject] = [] + for processedImage in processedImages { + guard let jpeg = processedImage.generateJPEG(with: settings.jpegQuality) else { + self.invoke?.reject("Unable to convert image to jpeg") + return + } + + guard let fileURL = try? saveTemporaryImage(jpeg), + let webURL = manager.assetUrl(fromLocalURL: fileURL) else { + invoke?.reject("Unable to get asset URL to file") + return + } + + photos.append([ + "path": fileURL.absoluteString, + "exif": processedImage.exifData, + "assetUrl": webURL.absoluteString, + "format": "jpeg" + ]) + } + invoke?.resolve([ + "photos": photos + ]) + } + + func returnProcessedImage(_ processedImage: ProcessedImage) { + // conditionally save the image + if settings.saveToGallery && (processedImage.flags.contains(.edited) == true || processedImage.flags.contains(.gallery) == false) { + _ = ImageSaver(image: processedImage.image) { error in + var isSaved = false + if error == nil { + isSaved = true + } + self.returnImage(processedImage, isSaved: isSaved) + } + } else { + self.returnImage(processedImage, isSaved: false) + } + } + + func showPrompt() { + // Build the action sheet + let alert = UIAlertController(title: settings.userPromptText.title, message: nil, preferredStyle: UIAlertController.Style.actionSheet) + alert.addAction(UIAlertAction(title: settings.userPromptText.photoAction, style: .default, handler: { [weak self] (_: UIAlertAction) in + self?.showPhotos() + })) + + alert.addAction(UIAlertAction(title: settings.userPromptText.cameraAction, style: .default, handler: { [weak self] (_: UIAlertAction) in + self?.showCamera() + })) + + alert.addAction(UIAlertAction(title: settings.userPromptText.cancelAction, style: .cancel, handler: { [weak self] (_: UIAlertAction) in + self?.invoke?.reject("User cancelled photos app prompt") + })) + UIUtils.centerPopover(rootViewController: manager.viewController, popoverController: alert) + self.manager.viewController?.present(alert, animated: true, completion: nil) + } + + func showCamera() { + // check if we have a camera + if manager.isSimEnvironment || !UIImagePickerController.isSourceTypeAvailable(UIImagePickerController.SourceType.camera) { + Logger.error("[PLUGIN]", "Camera", "-", "Camera not available in simulator") + invoke?.reject("Camera not available while running in Simulator") + return + } + // check for permission + let authStatus = AVCaptureDevice.authorizationStatus(for: .video) + if authStatus == .restricted || authStatus == .denied { + invoke?.reject("User denied access to camera") + return + } + // we either already have permission or can prompt + AVCaptureDevice.requestAccess(for: .video) { [weak self] granted in + if granted { + DispatchQueue.main.async { + self?.presentCameraPicker() + } + } else { + self?.invoke?.reject("User denied access to camera") + } + } + } + + func showPhotos() { + // check for permission + let authStatus = PHPhotoLibrary.authorizationStatus() + if authStatus == .restricted || authStatus == .denied { + invoke?.reject("User denied access to photos") + return + } + // we either already have permission or can prompt + if authStatus == .authorized { + presentSystemAppropriateImagePicker() + } else { + PHPhotoLibrary.requestAuthorization({ [weak self] (status) in + if status == PHAuthorizationStatus.authorized { + DispatchQueue.main.async { [weak self] in + self?.presentSystemAppropriateImagePicker() + } + } else { + self?.invoke?.reject("User denied access to photos") + } + }) + } + } + + func presentCameraPicker() { + let picker = UIImagePickerController() + picker.delegate = self + picker.allowsEditing = self.settings.allowEditing + // select the input + picker.sourceType = .camera + if settings.direction == .rear, UIImagePickerController.isCameraDeviceAvailable(.rear) { + picker.cameraDevice = .rear + } else if settings.direction == .front, UIImagePickerController.isCameraDeviceAvailable(.front) { + picker.cameraDevice = .front + } + // present + picker.modalPresentationStyle = settings.presentationStyle + if settings.presentationStyle == .popover { + picker.popoverPresentationController?.delegate = self + UIUtils.centerPopover(rootViewController: manager.viewController, popoverController: picker) + } + manager.viewController?.present(picker, animated: true, completion: nil) + } + + func presentSystemAppropriateImagePicker() { + if #available(iOS 14, *) { + presentPhotoPicker() + } else { + presentImagePicker() + } + } + + func presentImagePicker() { + let picker = UIImagePickerController() + picker.delegate = self + picker.allowsEditing = self.settings.allowEditing + // select the input + picker.sourceType = .photoLibrary + // present + picker.modalPresentationStyle = settings.presentationStyle + if settings.presentationStyle == .popover { + picker.popoverPresentationController?.delegate = self + UIUtils.centerPopover(rootViewController: manager.viewController, popoverController: picker) + } + manager.viewController?.present(picker, animated: true, completion: nil) + } + + @available(iOS 14, *) + func presentPhotoPicker() { + var configuration = PHPickerConfiguration(photoLibrary: PHPhotoLibrary.shared()) + configuration.selectionLimit = self.multiple ? (self.invoke?.getInt("limit") ?? 0) : 1 + configuration.filter = .images + let picker = PHPickerViewController(configuration: configuration) + picker.delegate = self + // present + picker.modalPresentationStyle = settings.presentationStyle + if settings.presentationStyle == .popover { + picker.popoverPresentationController?.delegate = self + UIUtils.centerPopover(rootViewController: manager.viewController, popoverController: picker) + } + manager.viewController?.present(picker, animated: true, completion: nil) + } + + func saveTemporaryImage(_ data: Data) throws -> URL { + var url: URL + repeat { + imageCounter += 1 + url = URL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent("photo-\(imageCounter).jpg") + } while FileManager.default.fileExists(atPath: url.path) + + try data.write(to: url, options: .atomic) + return url + } + + func processImage(from info: [UIImagePickerController.InfoKey: Any]) -> ProcessedImage? { + var selectedImage: UIImage? + var flags: PhotoFlags = [] + // get the image + if let edited = info[UIImagePickerController.InfoKey.editedImage] as? UIImage { + selectedImage = edited // use the edited version + flags = flags.union([.edited]) + } else if let original = info[UIImagePickerController.InfoKey.originalImage] as? UIImage { + selectedImage = original // use the original version + } + guard let image = selectedImage else { + return nil + } + var metadata: [String: Any] = [:] + // get the image's metadata from the picker or from the photo album + if let photoMetadata = info[UIImagePickerController.InfoKey.mediaMetadata] as? [String: Any] { + metadata = photoMetadata + } else { + flags = flags.union([.gallery]) + } + if let asset = info[UIImagePickerController.InfoKey.phAsset] as? PHAsset { + metadata = asset.imageData + } + // get the result + var result = processedImage(from: image, with: metadata) + result.flags = flags + return result + } + + func processedImage(from image: UIImage, with metadata: [String: Any]?) -> ProcessedImage { + var result = ProcessedImage(image: image, metadata: metadata ?? [:]) + // resizing the image only makes sense if we have real values to which to constrain it + if settings.shouldResize, settings.width > 0 || settings.height > 0 { + result.image = result.image.reformat(to: CGSize(width: settings.width, height: settings.height)) + result.overwriteMetadataOrientation(to: 1) + } else if settings.shouldCorrectOrientation { + // resizing implicitly reformats the image so this is only needed if we aren't resizing + result.image = result.image.reformat() + result.overwriteMetadataOrientation(to: 1) + } + return result + } +} + +@_cdecl("init_plugin_camera") +func initCameraPlugin(webview: WKWebView?) { + Tauri.registerPlugin(webview: webview, name: "camera", plugin: CameraPlugin()) +} diff --git a/plugins/camera/ios/Sources/CameraTypes.swift b/plugins/camera/ios/Sources/CameraTypes.swift new file mode 100644 index 00000000..adfb5640 --- /dev/null +++ b/plugins/camera/ios/Sources/CameraTypes.swift @@ -0,0 +1,142 @@ +import UIKit + +// MARK: - Public + +public enum CameraSource: String { + case prompt = "PROMPT" + case camera = "CAMERA" + case photos = "PHOTOS" +} + +public enum CameraDirection: String { + case rear = "REAR" + case front = "FRONT" +} + +public enum CameraResultType: String { + case base64 + case uri + case dataURL = "dataUrl" +} + +struct CameraPromptText { + let title: String + let photoAction: String + let cameraAction: String + let cancelAction: String + + init(title: String? = nil, photoAction: String? = nil, cameraAction: String? = nil, cancelAction: String? = nil) { + self.title = title ?? "Photo" + self.photoAction = photoAction ?? "From Photos" + self.cameraAction = cameraAction ?? "Take Picture" + self.cancelAction = cancelAction ?? "Cancel" + } +} + +public struct CameraSettings { + var source: CameraSource = CameraSource.prompt + var direction: CameraDirection = CameraDirection.rear + var resultType = CameraResultType.base64 + var userPromptText = CameraPromptText() + var jpegQuality: CGFloat = 1.0 + var width: CGFloat = 0 + var height: CGFloat = 0 + var allowEditing = false + var shouldResize = false + var shouldCorrectOrientation = true + var saveToGallery = false + var presentationStyle = UIModalPresentationStyle.fullScreen +} + +public struct CameraResult { + let image: UIImage? + let metadata: [AnyHashable: Any] +} + +// MARK: - Internal + +internal enum CameraPermissionType: String, CaseIterable { + case camera + case photos +} + +internal enum CameraPropertyListKeys: String, CaseIterable { + case photoLibraryAddUsage = "NSPhotoLibraryAddUsageDescription" + case photoLibraryUsage = "NSPhotoLibraryUsageDescription" + case cameraUsage = "NSCameraUsageDescription" + + var link: String { + switch self { + case .photoLibraryAddUsage: + return "https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW73" + case .photoLibraryUsage: + return "https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW17" + case .cameraUsage: + return "https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html#//apple_ref/doc/uid/TP40009251-SW24" + } + } + + var missingMessage: String { + return "You are missing \(self.rawValue) in your Info.plist file." + + " Camera will not function without it. Learn more: \(self.link)" + } +} + +internal struct PhotoFlags: OptionSet { + let rawValue: Int + + static let edited = PhotoFlags(rawValue: 1 << 0) + static let gallery = PhotoFlags(rawValue: 1 << 1) + + static let all: PhotoFlags = [.edited, .gallery] +} + +internal struct ProcessedImage { + var image: UIImage + var metadata: [String: Any] + var flags: PhotoFlags = [] + + var exifData: [String: Any] { + var exifData = metadata["{Exif}"] as? [String: Any] + exifData?["Orientation"] = metadata["Orientation"] + exifData?["GPS"] = metadata["{GPS}"] + return exifData ?? [:] + } + + mutating func overwriteMetadataOrientation(to orientation: Int) { + replaceDictionaryOrientation(atNode: &metadata, to: orientation) + } + + func replaceDictionaryOrientation(atNode node: inout [String: Any], to orientation: Int) { + for key in node.keys { + if key == "Orientation", (node[key] as? Int) != nil { + node[key] = orientation + } else if var child = node[key] as? [String: Any] { + replaceDictionaryOrientation(atNode: &child, to: orientation) + node[key] = child + } + } + } + + func generateJPEG(with quality: CGFloat) -> Data? { + // convert the UIImage to a jpeg + guard let data = self.image.jpegData(compressionQuality: quality) else { + return nil + } + // define our jpeg data as an image source and get its type + guard let source = CGImageSourceCreateWithData(data as CFData, nil), let type = CGImageSourceGetType(source) else { + return data + } + // allocate an output buffer and create the destination to receive the new data + guard let output = NSMutableData(capacity: data.count), let destination = CGImageDestinationCreateWithData(output, type, 1, nil) else { + return data + } + // pipe the source into the destination while overwriting the metadata, this encodes the metadata information into the image + CGImageDestinationAddImageFromSource(destination, source, 0, self.metadata as CFDictionary) + // finish + guard CGImageDestinationFinalize(destination) else { + return data + } + return output as Data + } +} \ No newline at end of file diff --git a/plugins/camera/ios/Sources/ImageSaver.swift b/plugins/camera/ios/Sources/ImageSaver.swift new file mode 100644 index 00000000..a33b43b0 --- /dev/null +++ b/plugins/camera/ios/Sources/ImageSaver.swift @@ -0,0 +1,20 @@ +import UIKit + +class ImageSaver: NSObject { + + var onResult: ((Error?) -> Void) = {_ in } + + init(image: UIImage, onResult:@escaping ((Error?) -> Void)) { + self.onResult = onResult + super.init() + UIImageWriteToSavedPhotosAlbum(image, self, #selector(saveResult), nil) + } + + @objc func saveResult(_ image: UIImage, didFinishSavingWithError error: Error?, contextInfo: UnsafeRawPointer) { + if let error = error { + onResult(error) + } else { + onResult(nil) + } + } +} \ No newline at end of file diff --git a/plugins/camera/ios/Tests/PluginTests/PluginTests.swift b/plugins/camera/ios/Tests/PluginTests/PluginTests.swift new file mode 100644 index 00000000..4f8e9ace --- /dev/null +++ b/plugins/camera/ios/Tests/PluginTests/PluginTests.swift @@ -0,0 +1,8 @@ +import XCTest +@testable import ExamplePlugin + +final class ExamplePluginTests: XCTestCase { + func testExample() throws { + let plugin = ExamplePlugin() + } +} diff --git a/plugins/camera/package.json b/plugins/camera/package.json new file mode 100644 index 00000000..e252ed1b --- /dev/null +++ b/plugins/camera/package.json @@ -0,0 +1,33 @@ +{ + "name": "tauri-plugin-camera-api", + "version": "0.0.0", + "description": "Ask the user take a photo with the camera or select an image from the gallery.", + "license": "MIT or APACHE-2.0", + "authors": [ + "Tauri Programme within The Commons Conservancy" + ], + "type": "module", + "browser": "dist-js/index.min.js", + "module": "dist-js/index.mjs", + "types": "dist-js/index.d.ts", + "exports": { + "import": "./dist-js/index.mjs", + "types": "./dist-js/index.d.ts", + "browser": "./dist-js/index.min.js" + }, + "scripts": { + "build": "rollup -c" + }, + "files": [ + "dist-js", + "!dist-js/**/*.map", + "README.md", + "LICENSE" + ], + "devDependencies": { + "tslib": "^2.4.1" + }, + "dependencies": { + "@tauri-apps/api": "^2.0.0-alpha.0" + } +} diff --git a/plugins/camera/rollup.config.mjs b/plugins/camera/rollup.config.mjs new file mode 100644 index 00000000..6555e98b --- /dev/null +++ b/plugins/camera/rollup.config.mjs @@ -0,0 +1,11 @@ +import { readFileSync } from "fs"; + +import { createConfig } from "../../shared/rollup.config.mjs"; + +export default createConfig({ + input: "guest-js/index.ts", + pkg: JSON.parse( + readFileSync(new URL("./package.json", import.meta.url), "utf8") + ), + external: [/^@tauri-apps\/api/], +}); diff --git a/plugins/camera/src/error.rs b/plugins/camera/src/error.rs new file mode 100644 index 00000000..393cc95e --- /dev/null +++ b/plugins/camera/src/error.rs @@ -0,0 +1,24 @@ +// Copyright 2019-2022 Tauri Programme within The Commons Conservancy +// SPDX-License-Identifier: Apache-2.0 +// SPDX-License-Identifier: MIT + +use serde::{ser::Serializer, Serialize}; + +pub type Result = std::result::Result; + +#[derive(Debug, thiserror::Error)] +pub enum Error { + #[error(transparent)] + Io(#[from] std::io::Error), + #[error(transparent)] + PluginInvoke(#[from] tauri::plugin::mobile::PluginInvokeError), +} + +impl Serialize for Error { + fn serialize(&self, serializer: S) -> std::result::Result + where + S: Serializer, + { + serializer.serialize_str(self.to_string().as_ref()) + } +} diff --git a/plugins/camera/src/lib.rs b/plugins/camera/src/lib.rs new file mode 100644 index 00000000..b598d523 --- /dev/null +++ b/plugins/camera/src/lib.rs @@ -0,0 +1,60 @@ +// Copyright 2019-2022 Tauri Programme within The Commons Conservancy +// SPDX-License-Identifier: Apache-2.0 +// SPDX-License-Identifier: MIT + +#![cfg(mobile)] + +use tauri::{ + plugin::{Builder, PluginHandle, TauriPlugin}, + Manager, Runtime, +}; + +pub use models::*; +mod error; +pub mod models; +pub use error::*; + +#[cfg(target_os = "android")] +const PLUGIN_IDENTIFIER: &str = "app.tauri.camera"; + +#[cfg(target_os = "ios")] +extern "C" { + fn init_plugin_camera(webview: tauri::cocoa::base::id); +} + +/// A helper class to access the mobile camera APIs. +pub struct Camera(PluginHandle); + +impl Camera { + pub fn get_photo(&self, options: ImageOptions) -> Result { + self + .0 + .run_mobile_plugin("getPhoto", options) + .map_err(Into::into) + } +} + +/// Extensions to [`tauri::App`], [`tauri::AppHandle`] and [`tauri::Window`] to access the camera APIs. +pub trait CameraExt { + fn camera(&self) -> &Camera; +} + +impl> CameraExt for T { + fn camera(&self) -> &Camera { + self.state::>().inner() + } +} + +/// Initializes the plugin. +pub fn init() -> TauriPlugin { + Builder::new("camera") + .setup(|app, api| { + #[cfg(target_os = "android")] + let handle = api.register_android_plugin(PLUGIN_IDENTIFIER, "CameraPlugin")?; + #[cfg(target_os = "ios")] + let handle = api.register_ios_plugin(init_plugin_camera)?; + app.manage(Camera(handle)); + Ok(()) + }) + .build() +} diff --git a/plugins/camera/src/models.rs b/plugins/camera/src/models.rs new file mode 100644 index 00000000..65294857 --- /dev/null +++ b/plugins/camera/src/models.rs @@ -0,0 +1,38 @@ +// Copyright 2019-2022 Tauri Programme within The Commons Conservancy +// SPDX-License-Identifier: Apache-2.0 +// SPDX-License-Identifier: MIT + +use serde::{Deserialize, Serialize}; + +#[derive(Debug, Default, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct ImageOptions { + pub quality: Option, + #[serde(default)] + pub allow_editing: bool, + pub result_type: Option, + #[serde(default)] + pub save_to_gallery: bool, + pub width: Option, + pub height: Option, + #[serde(default)] + pub correct_orientation: bool, + pub source: Option, + pub direction: Option, + pub presentation_style: Option, + pub prompt_label_header: Option, + pub prompt_label_cancel: Option, + pub prompt_label_photo: Option, + pub prompt_label_picture: Option, +} + +#[derive(Debug, Clone, Default, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct Image { + pub data: String, + pub asset_url: Option, + pub format: String, + #[serde(default)] + pub saved: bool, + pub exif: serde_json::Value, +} diff --git a/plugins/camera/tsconfig.json b/plugins/camera/tsconfig.json new file mode 100644 index 00000000..5098169a --- /dev/null +++ b/plugins/camera/tsconfig.json @@ -0,0 +1,4 @@ +{ + "extends": "../../tsconfig.base.json", + "include": ["guest-js/*.ts"] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a8fb00f2..9f3afc22 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -52,6 +52,34 @@ importers: devDependencies: tslib: 2.4.1 + plugins/camera: + specifiers: + '@tauri-apps/api': ^2.0.0-alpha.0 + tslib: ^2.4.1 + dependencies: + '@tauri-apps/api': 2.0.0-alpha.0 + devDependencies: + tslib: 2.4.1 + + plugins/camera/examples/tauri-app: + specifiers: + '@sveltejs/vite-plugin-svelte': ^1.0.1 + '@tauri-apps/api': ^1.1.0 + '@tauri-apps/cli': ^2.0.0-alpha.0 + internal-ip: ^7.0.0 + svelte: ^3.49.0 + tauri-plugin-camera-api: link:../../ + vite: ^3.0.2 + dependencies: + '@tauri-apps/api': 1.2.0 + tauri-plugin-camera-api: link:../.. + devDependencies: + '@sveltejs/vite-plugin-svelte': 1.4.0_svelte@3.55.1+vite@3.2.5 + '@tauri-apps/cli': 2.0.0-alpha.2 + internal-ip: 7.0.0 + svelte: 3.55.1 + vite: 3.2.5 + plugins/fs-extra: specifiers: '@tauri-apps/api': ^1.2.0 @@ -164,6 +192,15 @@ importers: packages: + /@esbuild/android-arm/0.15.18: + resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + /@esbuild/android-arm/0.16.16: resolution: {integrity: sha512-BUuWMlt4WSXod1HSl7aGK8fJOsi+Tab/M0IDK1V1/GstzoOpqc/v3DqmN8MkuapPKQ9Br1WtLAN4uEgWR8x64A==} engines: {node: '>=12'} @@ -254,6 +291,15 @@ packages: dev: true optional: true + /@esbuild/linux-loong64/0.15.18: + resolution: {integrity: sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@esbuild/linux-loong64/0.16.16: resolution: {integrity: sha512-MdUFggHjRiCCwNE9+1AibewoNq6wf94GLB9Q9aXwl+a75UlRmbRK3h6WJyrSGA6ZstDJgaD2wiTSP7tQNUYxwA==} engines: {node: '>=12'} @@ -565,6 +611,25 @@ packages: - supports-color dev: true + /@sveltejs/vite-plugin-svelte/1.4.0_svelte@3.55.1+vite@3.2.5: + resolution: {integrity: sha512-6QupI/jemMfK+yI2pMtJcu5iO2gtgTfcBdGwMZZt+lgbFELhszbDl6Qjh000HgAV8+XUA+8EY8DusOFk8WhOIg==} + engines: {node: ^14.18.0 || >= 16} + peerDependencies: + svelte: ^3.44.0 + vite: ^3.0.0 + dependencies: + debug: 4.3.4 + deepmerge: 4.2.2 + kleur: 4.1.5 + magic-string: 0.26.7 + svelte: 3.55.1 + svelte-hmr: 0.15.1_svelte@3.55.1 + vite: 3.2.5 + vitefu: 0.2.4_vite@3.2.5 + transitivePeerDependencies: + - supports-color + dev: true + /@sveltejs/vite-plugin-svelte/2.0.2_svelte@3.55.1+vite@4.0.4: resolution: {integrity: sha512-xCEan0/NNpQuL0l5aS42FjwQ6wwskdxC3pW1OeFtEKNZwRg7Evro9lac9HesGP6TdFsTv2xMes5ASQVKbCacxg==} engines: {node: ^14.18.0 || >= 16} @@ -589,6 +654,11 @@ packages: engines: {node: '>= 14.6.0', npm: '>= 6.6.0', yarn: '>= 1.19.1'} dev: false + /@tauri-apps/api/2.0.0-alpha.0: + resolution: {integrity: sha512-PQdy1Ao6JwKwW2/C11nP+IqnrWHB7+UgbM71zbzA1W3+1yyd9Zg+K7rzZ7f3yhvD7kdxmXUN3KgSfGeiDFzZ2A==} + engines: {node: '>= 14.6.0', npm: '>= 6.6.0', yarn: '>= 1.19.1'} + dev: false + /@tauri-apps/cli-darwin-arm64/1.2.2: resolution: {integrity: sha512-W+Cp2weUMlvmGkRJeUjypbz9Lpl6o98xkgKAtobZSum5SNwpsBQfawJTESakNoD+FXyVg/snIk5sRdHge+tAaA==} engines: {node: '>= 10'} @@ -598,6 +668,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-darwin-arm64/2.0.0-alpha.2: + resolution: {integrity: sha512-Wu5QdZUgh0DEE0b3EKdJRkZzFoVngezxgvncQlMdXNaiKjdT767K2fB0XvQps+ycbtVLbUlG15jAwPZbWqRYGw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-darwin-x64/1.2.2: resolution: {integrity: sha512-vmVAqt+ECH2d6cbcGJ7ddcCAZgmKe5xmxlL5r4xoaphu7OqU4gnv4VFURYkVltOfwzIFQVOPVSqwYyIDToCYNQ==} engines: {node: '>= 10'} @@ -607,6 +686,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-darwin-x64/2.0.0-alpha.2: + resolution: {integrity: sha512-e5VLsT/exSW1swUWkhCEAQ/fM8mZaUMoGeyESYtO7VfTNVglS0j+VfQ9a8taRxtOkajDZmqMDvmii4tA5I1Bbw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-linux-arm-gnueabihf/1.2.2: resolution: {integrity: sha512-yYTdQurgi4QZR8z+fANjl522jdQz/VtesFpw+C/A0+zXg7tiRjicsywBDdPsvNzCqFeGKKkmTR+Lny5qxhGaeQ==} engines: {node: '>= 10'} @@ -616,6 +704,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-linux-arm-gnueabihf/2.0.0-alpha.2: + resolution: {integrity: sha512-+/emaFpDPuqnTIyh+WcDqCbzc/SoREFfLDyumqdnFjRU1Uvc2Z9Eo/sMVnfuUw5vDMc2EPzYtT3uiZGez65ZTA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-linux-arm64-gnu/1.2.2: resolution: {integrity: sha512-ZSOVT6Eq1ay2+27B8KfA0MnpO7KYzONU6TjenH7DNcQki6eWGG5JoNu8QQ9Mdn3dAzY0XBP9i1ZHQOFu4iPtEg==} engines: {node: '>= 10'} @@ -625,6 +722,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-linux-arm64-gnu/2.0.0-alpha.2: + resolution: {integrity: sha512-UHAyqt8fFbp9MEbUHSiEKjJC98w/Dta3r9auE70K+/uNpt9pnP/lGturDWWAJagRIFwYKPyqSEqL5qFcKadYqw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-linux-arm64-musl/1.2.2: resolution: {integrity: sha512-/NHSkqNQ+Pr4PshvyD1CeNFaPCaCpe1OeuAQgVi0rboSecC9fXN96G5dQbSBoxOUcCo6f8aTVE7zkZ4WchFVog==} engines: {node: '>= 10'} @@ -634,6 +740,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-linux-arm64-musl/2.0.0-alpha.2: + resolution: {integrity: sha512-3euwm11RWvmTX+ISR/Y+N0TaWTJCRIj1pDgB+r2ZptRKlVTMNTJZDTXQlyJKcWEpi1azlbdxAzRvhN8NrgDmyA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-linux-x64-gnu/1.2.2: resolution: {integrity: sha512-4YTmfPuyvlHsvCkATDMwhklfuQm3HKxYXv/IOW9H0ra6pS9efVhrFYIC9Vfv6XaKN85Vnn/FYTEGMJLwCxZw2Q==} engines: {node: '>= 10'} @@ -643,6 +758,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-linux-x64-gnu/2.0.0-alpha.2: + resolution: {integrity: sha512-ijJ8Wij5mVd9p6lXQ+pXoFlx3Iv1JS1KQTeySICds43xzE8esGp5+HXRXDwWqQLdVmtI77P5VRIe2ssXiaeDUg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-linux-x64-musl/1.2.2: resolution: {integrity: sha512-wr46tbscwFuCcA931R+ItOiUTT0djMmgKLd1HFCmFF82V9BKE2reIjr6O9l0NCXCo2WeD4pe3jA/Pt1dxDu+JA==} engines: {node: '>= 10'} @@ -652,6 +776,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-linux-x64-musl/2.0.0-alpha.2: + resolution: {integrity: sha512-sg8OTQfG/zJ4+6MA/+hk08hVb57iJn5VZDzBb3o6IpJ0cwtM8YDNv5C+6HWttBuxsn4oEoYxGml/FvowMfsOCg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-win32-ia32-msvc/1.2.2: resolution: {integrity: sha512-6VmbVJOWUZJK5/JKhb3mNFKrKGfq0KV7lJGumfN95WJgkHeyL61p8bZit+o6ZgUGUhrOabkAawhDkrRY+ZQhIw==} engines: {node: '>= 10'} @@ -661,6 +794,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-win32-ia32-msvc/2.0.0-alpha.2: + resolution: {integrity: sha512-R1AmO3GEm97ptM0tjxZjZ1fLnxzN3ZeOEKc85nR7ayqVqKVhMu+dhq5lKa/Y3GdMUR6Yj9GoCnaLp2xy4bV6JQ==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli-win32-x64-msvc/1.2.2: resolution: {integrity: sha512-YRPJguJma+zSuRZpFoSZqls6+laggG1vqG0FPQWQTi+ywATgMpai2b2RZnffDlpHKp9mt4V/s2dtqOy6bpGZHg==} engines: {node: '>= 10'} @@ -670,6 +812,15 @@ packages: dev: false optional: true + /@tauri-apps/cli-win32-x64-msvc/2.0.0-alpha.2: + resolution: {integrity: sha512-cLJJWxCdvvQP+I0B4h6h0TMMNYISoatQu57QVxPqypbkC/lK/ljjrbD5nu7M9wTFBkLkCTGyMC7N99esCmgIBQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@tauri-apps/cli/1.2.2: resolution: {integrity: sha512-D8zib3A0vWCvPPSyYLxww/OdDlVcY7fpcDVBH6qUvheOjj2aCyU7H9AYMRBwpgCfz8zY5+vomee+laLeB0H13w==} engines: {node: '>= 10'} @@ -686,6 +837,22 @@ packages: '@tauri-apps/cli-win32-x64-msvc': 1.2.2 dev: false + /@tauri-apps/cli/2.0.0-alpha.2: + resolution: {integrity: sha512-M5o2ESOv9jGr7oIDl3sR3Q5++DXSW4xyfxzKCyu1JVGlOc+C9Q4y0dbKhlpd0wPCAxRa0ikbfu7z8qfEhHSpVQ==} + engines: {node: '>= 10'} + hasBin: true + optionalDependencies: + '@tauri-apps/cli-darwin-arm64': 2.0.0-alpha.2 + '@tauri-apps/cli-darwin-x64': 2.0.0-alpha.2 + '@tauri-apps/cli-linux-arm-gnueabihf': 2.0.0-alpha.2 + '@tauri-apps/cli-linux-arm64-gnu': 2.0.0-alpha.2 + '@tauri-apps/cli-linux-arm64-musl': 2.0.0-alpha.2 + '@tauri-apps/cli-linux-x64-gnu': 2.0.0-alpha.2 + '@tauri-apps/cli-linux-x64-musl': 2.0.0-alpha.2 + '@tauri-apps/cli-win32-ia32-msvc': 2.0.0-alpha.2 + '@tauri-apps/cli-win32-x64-msvc': 2.0.0-alpha.2 + dev: true + /@types/cookie/0.5.1: resolution: {integrity: sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==} dev: true @@ -1086,6 +1253,13 @@ packages: engines: {node: '>=0.10.0'} dev: true + /default-gateway/6.0.3: + resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==} + engines: {node: '>= 10'} + dependencies: + execa: 5.1.1 + dev: true + /define-properties/1.1.4: resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} engines: {node: '>= 0.4'} @@ -1174,6 +1348,216 @@ packages: resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} dev: true + /esbuild-android-64/0.15.18: + resolution: {integrity: sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /esbuild-android-arm64/0.15.18: + resolution: {integrity: sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /esbuild-darwin-64/0.15.18: + resolution: {integrity: sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /esbuild-darwin-arm64/0.15.18: + resolution: {integrity: sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /esbuild-freebsd-64/0.15.18: + resolution: {integrity: sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-freebsd-arm64/0.15.18: + resolution: {integrity: sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-32/0.15.18: + resolution: {integrity: sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-64/0.15.18: + resolution: {integrity: sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-arm/0.15.18: + resolution: {integrity: sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-arm64/0.15.18: + resolution: {integrity: sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-mips64le/0.15.18: + resolution: {integrity: sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-ppc64le/0.15.18: + resolution: {integrity: sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-riscv64/0.15.18: + resolution: {integrity: sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-linux-s390x/0.15.18: + resolution: {integrity: sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /esbuild-netbsd-64/0.15.18: + resolution: {integrity: sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-openbsd-64/0.15.18: + resolution: {integrity: sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /esbuild-sunos-64/0.15.18: + resolution: {integrity: sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /esbuild-windows-32/0.15.18: + resolution: {integrity: sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /esbuild-windows-64/0.15.18: + resolution: {integrity: sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /esbuild-windows-arm64/0.15.18: + resolution: {integrity: sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /esbuild/0.15.18: + resolution: {integrity: sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/android-arm': 0.15.18 + '@esbuild/linux-loong64': 0.15.18 + esbuild-android-64: 0.15.18 + esbuild-android-arm64: 0.15.18 + esbuild-darwin-64: 0.15.18 + esbuild-darwin-arm64: 0.15.18 + esbuild-freebsd-64: 0.15.18 + esbuild-freebsd-arm64: 0.15.18 + esbuild-linux-32: 0.15.18 + esbuild-linux-64: 0.15.18 + esbuild-linux-arm: 0.15.18 + esbuild-linux-arm64: 0.15.18 + esbuild-linux-mips64le: 0.15.18 + esbuild-linux-ppc64le: 0.15.18 + esbuild-linux-riscv64: 0.15.18 + esbuild-linux-s390x: 0.15.18 + esbuild-netbsd-64: 0.15.18 + esbuild-openbsd-64: 0.15.18 + esbuild-sunos-64: 0.15.18 + esbuild-windows-32: 0.15.18 + esbuild-windows-64: 0.15.18 + esbuild-windows-arm64: 0.15.18 + dev: true + /esbuild/0.16.16: resolution: {integrity: sha512-24JyKq10KXM5EBIgPotYIJ2fInNWVVqflv3gicIyQqfmUqi4HvDW1VR790cBgLJHCl96Syy7lhoz7tLFcmuRmg==} engines: {node: '>=12'} @@ -1502,6 +1886,21 @@ packages: engines: {node: '>=0.10.0'} dev: true + /execa/5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + dependencies: + cross-spawn: 7.0.3 + get-stream: 6.0.1 + human-signals: 2.1.0 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + dev: true + /fast-deep-equal/3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} dev: true @@ -1603,6 +2002,11 @@ packages: has-symbols: 1.0.3 dev: true + /get-stream/6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + dev: true + /get-symbol-description/1.0.0: resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} engines: {node: '>= 0.4'} @@ -1711,6 +2115,11 @@ packages: function-bind: 1.1.1 dev: true + /human-signals/2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + dev: true + /ignore/5.2.1: resolution: {integrity: sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==} engines: {node: '>= 4'} @@ -1744,6 +2153,16 @@ packages: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} dev: true + /internal-ip/7.0.0: + resolution: {integrity: sha512-qE4TeD4brqC45Vq/+VASeMiS1KRyfBkR6HT2sh9pZVVCzSjPkaCEfKFU+dL0PRv7NHJtvoKN2r82G6wTfzorkw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + default-gateway: 6.0.3 + ipaddr.js: 2.0.1 + is-ip: 3.1.0 + p-event: 4.2.0 + dev: true + /internal-slot/1.0.4: resolution: {integrity: sha512-tA8URYccNzMo94s5MQZgH8NB/XTa6HsOo0MLfXTKKEnHVVdegzaQoFZ7Jp44bdvLvY2waT5dc+j5ICEswhi7UQ==} engines: {node: '>= 0.4'} @@ -1753,6 +2172,16 @@ packages: side-channel: 1.0.4 dev: true + /ip-regex/4.3.0: + resolution: {integrity: sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==} + engines: {node: '>=8'} + dev: true + + /ipaddr.js/2.0.1: + resolution: {integrity: sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==} + engines: {node: '>= 10'} + dev: true + /is-bigint/1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: @@ -1811,6 +2240,13 @@ packages: is-extglob: 2.1.1 dev: true + /is-ip/3.1.0: + resolution: {integrity: sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==} + engines: {node: '>=8'} + dependencies: + ip-regex: 4.3.0 + dev: true + /is-module/1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} dev: true @@ -1851,6 +2287,11 @@ packages: call-bind: 1.0.2 dev: true + /is-stream/2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + dev: true + /is-string/1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -1938,6 +2379,13 @@ packages: sourcemap-codec: 1.4.8 dev: true + /magic-string/0.26.7: + resolution: {integrity: sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==} + engines: {node: '>=12'} + dependencies: + sourcemap-codec: 1.4.8 + dev: true + /magic-string/0.27.0: resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} engines: {node: '>=12'} @@ -1945,6 +2393,10 @@ packages: '@jridgewell/sourcemap-codec': 1.4.14 dev: true + /merge-stream/2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + dev: true + /merge2/1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} @@ -1964,6 +2416,11 @@ packages: hasBin: true dev: true + /mimic-fn/2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + dev: true + /min-indent/1.0.1: resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} engines: {node: '>=4'} @@ -2027,6 +2484,13 @@ packages: engines: {node: '>=0.10.0'} dev: true + /npm-run-path/4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} + dependencies: + path-key: 3.1.1 + dev: true + /object-inspect/1.12.2: resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==} dev: true @@ -2061,6 +2525,13 @@ packages: wrappy: 1.0.2 dev: true + /onetime/5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + dependencies: + mimic-fn: 2.1.0 + dev: true + /optionator/0.9.1: resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} engines: {node: '>= 0.8.0'} @@ -2073,6 +2544,18 @@ packages: word-wrap: 1.2.3 dev: true + /p-event/4.2.0: + resolution: {integrity: sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==} + engines: {node: '>=8'} + dependencies: + p-timeout: 3.2.0 + dev: true + + /p-finally/1.0.0: + resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} + engines: {node: '>=4'} + dev: true + /p-limit/3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} @@ -2087,6 +2570,13 @@ packages: p-limit: 3.1.0 dev: true + /p-timeout/3.2.0: + resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} + engines: {node: '>=8'} + dependencies: + p-finally: 1.0.0 + dev: true + /parent-module/1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -2216,6 +2706,14 @@ packages: glob: 7.2.3 dev: true + /rollup/2.79.1: + resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==} + engines: {node: '>=10.0.0'} + hasBin: true + optionalDependencies: + fsevents: 2.3.2 + dev: true + /rollup/3.7.4: resolution: {integrity: sha512-jN9rx3k5pfg9H9al0r0y1EYKSeiRANZRYX32SuNXAnKzh6cVyf4LZVto1KAuDnbHT03E1CpsgqDKaqQ8FZtgxw==} engines: {node: '>=14.18.0', npm: '>=8.0.0'} @@ -2296,6 +2794,10 @@ packages: object-inspect: 1.12.2 dev: true + /signal-exit/3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + dev: true + /sirv/2.0.2: resolution: {integrity: sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==} engines: {node: '>= 10'} @@ -2379,6 +2881,11 @@ packages: engines: {node: '>=4'} dev: true + /strip-final-newline/2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + dev: true + /strip-indent/3.0.0: resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} engines: {node: '>=8'} @@ -2597,6 +3104,39 @@ packages: punycode: 2.1.1 dev: true + /vite/3.2.5: + resolution: {integrity: sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + peerDependencies: + '@types/node': '>= 14' + less: '*' + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + esbuild: 0.15.18 + postcss: 8.4.21 + resolve: 1.22.1 + rollup: 2.79.1 + optionalDependencies: + fsevents: 2.3.2 + dev: true + /vite/4.0.4: resolution: {integrity: sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==} engines: {node: ^14.18.0 || >=16.0.0} @@ -2630,6 +3170,17 @@ packages: fsevents: 2.3.2 dev: true + /vitefu/0.2.4_vite@3.2.5: + resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} + peerDependencies: + vite: ^3.0.0 || ^4.0.0 + peerDependenciesMeta: + vite: + optional: true + dependencies: + vite: 3.2.5 + dev: true + /vitefu/0.2.4_vite@4.0.4: resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} peerDependencies: