From d8038d292d41fe5fc8a95620c755e11980da0ae0 Mon Sep 17 00:00:00 2001 From: leefer Date: Tue, 25 Aug 2026 21:04:14 +0800 Subject: [PATCH] feat-bootstrap-Snaplet-Windows-screenshot-tool --- .gitignore | 7 + README.md | 39 + index.html | 13 + package-lock.json | 2203 ++++++ package.json | 30 + src-tauri/Cargo.lock | 6781 +++++++++++++++++ src-tauri/Cargo.toml | 28 + src-tauri/build.rs | 3 + src-tauri/capabilities/default.json | 18 + src-tauri/gen/schemas/acl-manifests.json | 1 + src-tauri/gen/schemas/capabilities.json | 1 + src-tauri/gen/schemas/desktop-schema.json | 2544 +++++++ src-tauri/gen/schemas/windows-schema.json | 2544 +++++++ src-tauri/icons/128x128.png | Bin 0 -> 6324 bytes src-tauri/icons/128x128@2x.png | Bin 0 -> 13219 bytes src-tauri/icons/32x32.png | Bin 0 -> 1343 bytes src-tauri/icons/64x64.png | Bin 0 -> 2972 bytes src-tauri/icons/Square107x107Logo.png | Bin 0 -> 5276 bytes src-tauri/icons/Square142x142Logo.png | Bin 0 -> 7023 bytes src-tauri/icons/Square150x150Logo.png | Bin 0 -> 7705 bytes src-tauri/icons/Square284x284Logo.png | Bin 0 -> 15170 bytes src-tauri/icons/Square30x30Logo.png | Bin 0 -> 1270 bytes src-tauri/icons/Square310x310Logo.png | Bin 0 -> 16318 bytes src-tauri/icons/Square44x44Logo.png | Bin 0 -> 1924 bytes src-tauri/icons/Square71x71Logo.png | Bin 0 -> 3285 bytes src-tauri/icons/Square89x89Logo.png | Bin 0 -> 4165 bytes src-tauri/icons/StoreLogo.png | Bin 0 -> 2350 bytes .../android/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../icons/android/mipmap-hdpi/ic_launcher.png | Bin 0 -> 3097 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 0 -> 8216 bytes .../android/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 2804 bytes .../icons/android/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2929 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 0 -> 5284 bytes .../android/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 2717 bytes .../android/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 6545 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 0 -> 11241 bytes .../mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 6210 bytes .../android/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 10711 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 0 -> 17372 bytes .../mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 9752 bytes .../android/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 14362 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 0 -> 23738 bytes .../mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 12903 bytes .../android/values/ic_launcher_background.xml | 4 + src-tauri/icons/icon.icns | Bin 0 -> 160768 bytes src-tauri/icons/icon.ico | Bin 0 -> 25100 bytes src-tauri/icons/icon.png | Bin 0 -> 27903 bytes src-tauri/icons/icon.svg | 17 + src-tauri/icons/ios/AppIcon-20x20@1x.png | Bin 0 -> 796 bytes src-tauri/icons/ios/AppIcon-20x20@2x-1.png | Bin 0 -> 1761 bytes src-tauri/icons/ios/AppIcon-20x20@2x.png | Bin 0 -> 1761 bytes src-tauri/icons/ios/AppIcon-20x20@3x.png | Bin 0 -> 2731 bytes src-tauri/icons/ios/AppIcon-29x29@1x.png | Bin 0 -> 1213 bytes src-tauri/icons/ios/AppIcon-29x29@2x-1.png | Bin 0 -> 2656 bytes src-tauri/icons/ios/AppIcon-29x29@2x.png | Bin 0 -> 2656 bytes src-tauri/icons/ios/AppIcon-29x29@3x.png | Bin 0 -> 4066 bytes src-tauri/icons/ios/AppIcon-40x40@1x.png | Bin 0 -> 1761 bytes src-tauri/icons/ios/AppIcon-40x40@2x-1.png | Bin 0 -> 3921 bytes src-tauri/icons/ios/AppIcon-40x40@2x.png | Bin 0 -> 3921 bytes src-tauri/icons/ios/AppIcon-40x40@3x.png | Bin 0 -> 5838 bytes src-tauri/icons/ios/AppIcon-512@2x.png | Bin 0 -> 63142 bytes src-tauri/icons/ios/AppIcon-60x60@2x.png | Bin 0 -> 5838 bytes src-tauri/icons/ios/AppIcon-60x60@3x.png | Bin 0 -> 9037 bytes src-tauri/icons/ios/AppIcon-76x76@1x.png | Bin 0 -> 3719 bytes src-tauri/icons/ios/AppIcon-76x76@2x.png | Bin 0 -> 7733 bytes src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png | Bin 0 -> 8342 bytes src-tauri/src/lib.rs | 202 + src-tauri/src/main.rs | 5 + src-tauri/tauri.conf.json | 39 + src/App.tsx | 142 + src/CaptureOverlay.tsx | 87 + src/main.tsx | 8 + src/styles.css | 56 + src/types.ts | 16 + src/vite-env.d.ts | 1 + tsconfig.json | 21 + tsconfig.node.json | 10 + vite.config.ts | 10 + 78 files changed, 14835 insertions(+) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 index.html create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src-tauri/Cargo.lock create mode 100644 src-tauri/Cargo.toml create mode 100644 src-tauri/build.rs create mode 100644 src-tauri/capabilities/default.json create mode 100644 src-tauri/gen/schemas/acl-manifests.json create mode 100644 src-tauri/gen/schemas/capabilities.json create mode 100644 src-tauri/gen/schemas/desktop-schema.json create mode 100644 src-tauri/gen/schemas/windows-schema.json create mode 100644 src-tauri/icons/128x128.png create mode 100644 src-tauri/icons/128x128@2x.png create mode 100644 src-tauri/icons/32x32.png create mode 100644 src-tauri/icons/64x64.png create mode 100644 src-tauri/icons/Square107x107Logo.png create mode 100644 src-tauri/icons/Square142x142Logo.png create mode 100644 src-tauri/icons/Square150x150Logo.png create mode 100644 src-tauri/icons/Square284x284Logo.png create mode 100644 src-tauri/icons/Square30x30Logo.png create mode 100644 src-tauri/icons/Square310x310Logo.png create mode 100644 src-tauri/icons/Square44x44Logo.png create mode 100644 src-tauri/icons/Square71x71Logo.png create mode 100644 src-tauri/icons/Square89x89Logo.png create mode 100644 src-tauri/icons/StoreLogo.png create mode 100644 src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 src-tauri/icons/android/mipmap-hdpi/ic_launcher.png create mode 100644 src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png create mode 100644 src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png create mode 100644 src-tauri/icons/android/mipmap-mdpi/ic_launcher.png create mode 100644 src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png create mode 100644 src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png create mode 100644 src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png create mode 100644 src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png create mode 100644 src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png create mode 100644 src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png create mode 100644 src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png create mode 100644 src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png create mode 100644 src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png create mode 100644 src-tauri/icons/android/values/ic_launcher_background.xml create mode 100644 src-tauri/icons/icon.icns create mode 100644 src-tauri/icons/icon.ico create mode 100644 src-tauri/icons/icon.png create mode 100644 src-tauri/icons/icon.svg create mode 100644 src-tauri/icons/ios/AppIcon-20x20@1x.png create mode 100644 src-tauri/icons/ios/AppIcon-20x20@2x-1.png create mode 100644 src-tauri/icons/ios/AppIcon-20x20@2x.png create mode 100644 src-tauri/icons/ios/AppIcon-20x20@3x.png create mode 100644 src-tauri/icons/ios/AppIcon-29x29@1x.png create mode 100644 src-tauri/icons/ios/AppIcon-29x29@2x-1.png create mode 100644 src-tauri/icons/ios/AppIcon-29x29@2x.png create mode 100644 src-tauri/icons/ios/AppIcon-29x29@3x.png create mode 100644 src-tauri/icons/ios/AppIcon-40x40@1x.png create mode 100644 src-tauri/icons/ios/AppIcon-40x40@2x-1.png create mode 100644 src-tauri/icons/ios/AppIcon-40x40@2x.png create mode 100644 src-tauri/icons/ios/AppIcon-40x40@3x.png create mode 100644 src-tauri/icons/ios/AppIcon-512@2x.png create mode 100644 src-tauri/icons/ios/AppIcon-60x60@2x.png create mode 100644 src-tauri/icons/ios/AppIcon-60x60@3x.png create mode 100644 src-tauri/icons/ios/AppIcon-76x76@1x.png create mode 100644 src-tauri/icons/ios/AppIcon-76x76@2x.png create mode 100644 src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png create mode 100644 src-tauri/src/lib.rs create mode 100644 src-tauri/src/main.rs create mode 100644 src-tauri/tauri.conf.json create mode 100644 src/App.tsx create mode 100644 src/CaptureOverlay.tsx create mode 100644 src/main.tsx create mode 100644 src/styles.css create mode 100644 src/types.ts create mode 100644 src/vite-env.d.ts create mode 100644 tsconfig.json create mode 100644 tsconfig.node.json create mode 100644 vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..128b7ad --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +node_modules +dist +src-tauri/target +*.log +.DS_Store +.idea +.vscode diff --git a/README.md b/README.md new file mode 100644 index 0000000..8d14208 --- /dev/null +++ b/README.md @@ -0,0 +1,39 @@ +# Snaplet + +轻量、快速、顺手的桌面截图工具。当前优先支持 Windows,并为 macOS 保留相同的捕获接口。 + +## 第一版能力 + +- `Alt + Shift + A` 全局快捷键呼出截图 +- 主显示器区域框选 +- 复制截图到剪贴板或保存为 PNG +- 系统托盘驻留,关闭设置窗口后继续后台运行 +- 可选开机自启动 +- 自定义截图快捷键 + +## 本地开发 + +需要 Node.js、Rust stable 和 Windows WebView2。 + +```powershell +npm install +npm run tauri dev +``` + +在 Windows 上还需要 Visual Studio Build Tools 的“使用 C++ 的桌面开发”工作负载。当前开发机安装在 `C:\BuildTools`,可用以下方式生成发布包: + +```cmd +call C:\BuildTools\Common7\Tools\VsDevCmd.bat -arch=x64 +set PATH=C:\Users\vm15\.cargo\bin;%PATH% +npm run tauri build +``` + +生成结果位于 `src-tauri/target/release/bundle`。 + +## 近期计划 + +- 多显示器虚拟画布与跨屏框选 +- 标注工具:矩形、箭头、画笔、文字、马赛克 +- 窗口识别和放大镜 +- 截图历史与贴图 +- macOS ScreenCaptureKit 适配 diff --git a/index.html b/index.html new file mode 100644 index 0000000..8711716 --- /dev/null +++ b/index.html @@ -0,0 +1,13 @@ + + + + + + + Snaplet + + +
+ + + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..2593067 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,2203 @@ +{ + "name": "snaplet", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "snaplet", + "version": "0.1.0", + "dependencies": { + "@tauri-apps/api": "^2.8.0", + "@tauri-apps/plugin-autostart": "^2.5.0", + "@tauri-apps/plugin-clipboard-manager": "^2.3.0", + "@tauri-apps/plugin-dialog": "^2.4.0", + "@tauri-apps/plugin-global-shortcut": "^2.3.0", + "lucide-react": "^0.468.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "devDependencies": { + "@tauri-apps/cli": "^2.8.0", + "@types/react": "^18.3.18", + "@types/react-dom": "^18.3.5", + "@vitejs/plugin-react": "^4.3.4", + "typescript": "~5.7.2", + "vite": "^6.0.5" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.29.7", + "js-tokens": "^4.0.0", + "picocolors": "^1.1.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz", + "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", + "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helpers": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/remapping": "^2.3.5", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.8.tgz", + "integrity": "sha512-gZbepsdh3WDtgZKWL+vTPh71LSBrm/Y4/QDZBVCcYfmeTEEuoOYwlSy+G1StfJg+/Zy550u/3TATbm7qDbbMtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.8", + "@babel/types": "^7.29.8", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", + "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", + "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", + "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.8.tgz", + "integrity": "sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.29.7.tgz", + "integrity": "sha512-TL0hMc9xzy86VD31nUiwzd5otRAcyEPcsegCxolO0PvcXuH1v0kECe/UIznYFihpkvU5wg/jk4v0TTEFfm53fw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.29.7.tgz", + "integrity": "sha512-06IyK09H3wi4cGbhDBwp5gUGo0IKtnYa8tyTiephirPCK6fbobVGiXMMI5zLQ4aKEYP3wZ3ArU44o+8KMrSG/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.8.tgz", + "integrity": "sha512-I5z7H3bf/41ktsNVLtpN0wAa336HkqIHQ5BuPLEhTkt1jVSyZpeNKIzTgEWmlxjdg81R0IgUCcaE+Ok3NvrfZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.8", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.8", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.8", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz", + "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz", + "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz", + "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz", + "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz", + "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz", + "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz", + "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz", + "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz", + "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz", + "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz", + "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz", + "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz", + "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz", + "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz", + "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz", + "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz", + "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz", + "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz", + "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz", + "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz", + "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz", + "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz", + "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz", + "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz", + "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz", + "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/remapping": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@napi-rs/lzma-linux-x64-gnu": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@napi-rs/lzma-linux-x64-gnu/-/lzma-linux-x64-gnu-1.5.1.tgz", + "integrity": "sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^22.20 || ^24.12 || >=25" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.0-beta.27", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz", + "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.62.5.tgz", + "integrity": "sha512-jfkGfTwhQpsiSckPF8r9bU3pn3vyd72NlWaO+TgEO6WPSDnUhXzrNYCHBMOYj0ACaUgjm6eERLF+XV9a6RstoA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.62.5.tgz", + "integrity": "sha512-oGVqyQlxnrz9/ty89oHpU857VUHEl5/Xu4R2lS+aivCTrNnSsbiENzTnNaBsjxH0CNWGPhzHArOLFwo+oKXveA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.62.5.tgz", + "integrity": "sha512-bW7B8xMEq8n99Q3ieEcPRGuphurdZAaFzQc9Efyyw3FL6DZO6pMy9xhdN+kBoD7Sy05xNXSr4OyPPnpkYriS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.62.5.tgz", + "integrity": "sha512-YSwBS86QeHOGlrxJ1PSOIZSkzRL/JmKeunhc+lV6M1a6En8QuVCD/T/qIA0J4Gd2Y86RIOBYrLcOUtqGh9+/1w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.62.5.tgz", + "integrity": "sha512-2fST8lILgl7cKbme/1KDdPCmbXbG+gqoV3bHp19L0ypX/3akYMBVdOunPleRCwonoLnXOZ/0F+Mt/v8POFmfcQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.62.5.tgz", + "integrity": "sha512-cpIxQCP9J+EVad0a6LO1kY3ZGODlk80VlI+2I96B8xMcdHZ4pLVhfQ49JFpYqjPF91FFkQWftf57YlDcTiw9yQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.62.5.tgz", + "integrity": "sha512-r9fGh3eFs3e/udWh5ZjXQtxiYK/xoFxQaYR/cELxac/Udkl5Th+IsFm0CX3Kl9hmUH/we7EoMpjJgeQNnE0+IA==", + "cpu": [ + "arm" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.62.5.tgz", + "integrity": "sha512-xdvFdp7OM6KLJviJT2g/YuRSUjnZgGHk4RNgwIbN7X6cPugOucV60DdHXWzsBVCUdrGb6qSXnJQrrAKMmQuj3Q==", + "cpu": [ + "arm" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.62.5.tgz", + "integrity": "sha512-rRqILAndyzHzP7T9NFQrq+4HFWNhqkqkKur7eiBpfLmz01PO0JKx5Vchu3YllE4YXI/Ftgq/szrDWg5GJ0mI8g==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.62.5.tgz", + "integrity": "sha512-Gf4X3qVMucayUvux6aXXPgXovocSFUC0rrffDuPI/S2nHhNMhjcZxsrAFYCOF350PRreW1XwzFj3CT/3bKsWCw==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-gnu": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.62.5.tgz", + "integrity": "sha512-+s5qA0TNM0qm8PK/a5gt/1Hpx+NV08uSuCncvhziIlQzT6AEV2fnUQo7eBtFTFO0nA9scauvoR2HusfXmQnO4w==", + "cpu": [ + "loong64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loong64-musl": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.62.5.tgz", + "integrity": "sha512-ybb6QvWwWJCbBWqERpc8K3pYVGIrXlG8MEQ8IIuJY6Y9KdHQxoFoNyfkAOtKn1VHu3KuLidXvwrvGR1mEjeWCw==", + "cpu": [ + "loong64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-gnu": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.62.5.tgz", + "integrity": "sha512-nZb1DtnOyhCmYvsC8A2CwOkopVg+IS1+fPUa7rMOAXtNw5+lLCLLPqd6XAiNrGtoQKsbvIBOwsHnBH/3wnb4HQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-ppc64-musl": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.62.5.tgz", + "integrity": "sha512-yMbj63Sp89ryrXLWyz+sy+fYD2HpOnMCLGbe4Oa1smclFSUukdtD/BgdiHaAetJNb74URD8U4hM+qG5KVzMEkg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.62.5.tgz", + "integrity": "sha512-mhoan3OJw2kYV/e1jtIdmvUZgyBFeA6zGWsOswmR0Tg19TQbowZuR+JMLID6spbbBN7Zee2ejrgmy3+FxGrIdA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-musl": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.62.5.tgz", + "integrity": "sha512-5ZTLmjWbb1VZdjuyhe83K/8QO0/h11midQCBP+X5OYn32ra7eOBoM0ZqtaY4nkgNsYgmdVhMYPoyVPTjUpHf3w==", + "cpu": [ + "riscv64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.62.5.tgz", + "integrity": "sha512-m53kG+br6PGxOTmgBEM2DHSDs9RVjsyEbUwjJPJGTFm1grWOG8EKJggDCTb60unD4Tjby8fi7/m9XfkEWasVWg==", + "cpu": [ + "s390x" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.62.5.tgz", + "integrity": "sha512-6RHPJR1g/uvdYU8uXBnfq3nlqyZCP82Fr6NHgfGoaIeSh0YEqnX/x6uA9MmJJbnSH7swqX4F+CkGdUF+6doiQA==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.62.5.tgz", + "integrity": "sha512-xs+OXQtEXgpXT0DmA5+U3qnRZHdCST/5HRQxS8wSPZTUZN/EMWeHuSIod32LQklTBZBV9DyfncKBQ8n5V3eFdw==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-openbsd-x64": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.62.5.tgz", + "integrity": "sha512-e7hD+sl3s+mcLQDZ8pbudBVsdG6r5yN4w3LqG2TJ8sQHDpblWj5lrJs/3m01Cvlxbt4x13zu5thLjgypgtkYzw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ] + }, + "node_modules/@rollup/rollup-openharmony-arm64": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.62.5.tgz", + "integrity": "sha512-GiyJaCf+WpMub/17aPcKk27QMl5W6f+KhdPTjlFOn5akH5Wa/DCM9Stdx5cDfmasyKB08MqpVQ1uJE2RkkpbXg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.62.5.tgz", + "integrity": "sha512-+OQ8U2DdoEfXl8T4Fb18AjmEwbXMerKDKCL8yCPAYhKCEEKoul7rkbeGCBFCbAlaGaa7pmtRTpkAJM2LE/i5FA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.62.5.tgz", + "integrity": "sha512-KanvAZrPKbDBFwrgiU9yEVpQoox9QPV1WZOXX7HudJQY+eSlu82CtWxDU8WtuRRvtN5EGkLczkd6Y6DTcvm9wA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-gnu": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.62.5.tgz", + "integrity": "sha512-1aC3UEWTtRl3RK3VpDJ/Tqk1XI4SLTmXIthAq6wRWo8XiSXJNd+VprJM4/1P4+i6HIaFEFlVi9sTTziniD2tOQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.5.tgz", + "integrity": "sha512-/gDJaRs4gl0NPIwqCz+6PkpmhhjRAD2j6P4rSNHBzUkO3naEx2mIU0pRle1vUNRQ7mE/+8OOeXLTv/J56FKiQg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@tauri-apps/api": { + "version": "2.11.1", + "resolved": "https://registry.npmjs.org/@tauri-apps/api/-/api-2.11.1.tgz", + "integrity": "sha512-M2FPuYND2m+wh5hfW9ZpSdxMPdEJovPBWwoHJmwUpysTYNHaOkVFN419m/K0LIgjb/7KU2vBgsUepJWugQCvAA==", + "license": "Apache-2.0 OR MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/tauri" + } + }, + "node_modules/@tauri-apps/cli": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli/-/cli-2.11.4.tgz", + "integrity": "sha512-R8xGtMpwyetawSqm9kYOuMmEqkhUbvcUy8n0aNXIxollKBLESUu5f4Fx+64hgASYm1H+jSWq6jCW6zqTnH6hqQ==", + "dev": true, + "license": "Apache-2.0 OR MIT", + "bin": { + "tauri": "tauri.js" + }, + "engines": { + "node": ">= 10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/tauri" + }, + "optionalDependencies": { + "@tauri-apps/cli-darwin-arm64": "2.11.4", + "@tauri-apps/cli-darwin-x64": "2.11.4", + "@tauri-apps/cli-linux-arm-gnueabihf": "2.11.4", + "@tauri-apps/cli-linux-arm64-gnu": "2.11.4", + "@tauri-apps/cli-linux-arm64-musl": "2.11.4", + "@tauri-apps/cli-linux-riscv64-gnu": "2.11.4", + "@tauri-apps/cli-linux-x64-gnu": "2.11.4", + "@tauri-apps/cli-linux-x64-musl": "2.11.4", + "@tauri-apps/cli-win32-arm64-msvc": "2.11.4", + "@tauri-apps/cli-win32-ia32-msvc": "2.11.4", + "@tauri-apps/cli-win32-x64-msvc": "2.11.4" + } + }, + "node_modules/@tauri-apps/cli-darwin-arm64": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-arm64/-/cli-darwin-arm64-2.11.4.tgz", + "integrity": "sha512-1ryOF3ZhpZ/nemHV5zVwBQBz9jDGKmKPvWPADOhc83ig0P4bMc2iER4NbC6r9sjeIZ6RVQ4g3RZIYvezhcl4TQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-darwin-x64": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-x64/-/cli-darwin-x64-2.11.4.tgz", + "integrity": "sha512-uFsGQAAfuyz1k/yGLmkWfkBlgKAqZfxqlHmLWx81QU27RJWfmbNHCIq8T8w1e+VClleIuZUjpHWfoE4E3DLo3A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-linux-arm-gnueabihf": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm-gnueabihf/-/cli-linux-arm-gnueabihf-2.11.4.tgz", + "integrity": "sha512-IaHZn5CdBL21oUmjiVOS1ctw6Ip1O0pjp70FwOWmYz1myWe0SY96ZIj2FYf7pT0m8bI2h/hrs5ZbEXXh44/MkQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-linux-arm64-gnu": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-gnu/-/cli-linux-arm64-gnu-2.11.4.tgz", + "integrity": "sha512-N41/ukTRVe6XSuUTESuFdGeOW2i7k62tK+6gHK5Kd5/q5RPvvi19GaWAVPPb9u95HSGmTChSolBfzynUsssFaA==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-linux-arm64-musl": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.11.4.tgz", + "integrity": "sha512-v277UnT/fB64xAfSroL5N3Km3tLmvATWqJJw/wRI+g6o+HkeD0slyE7gOhNs1MbjE41R7bQOTxMVoL3aomUJmw==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-linux-riscv64-gnu": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-riscv64-gnu/-/cli-linux-riscv64-gnu-2.11.4.tgz", + "integrity": "sha512-qqgNkQ2u1yZHxjhxsZaxUtRDW8dIqIYm33rx/mzwQv0SfY9x1B+iraj8vWeFiXjjSVVhEMepXSOts1TqPzvXNQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-linux-x64-gnu": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-gnu/-/cli-linux-x64-gnu-2.11.4.tgz", + "integrity": "sha512-2VRNWl84FOH0m2giiDkO2h0QXlcMJeX+zJDpI5kDIQAx6s+geF3v48F4DXfJez4GS/FdoDGnPnw1C2iYGbQ7bQ==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-linux-x64-musl": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-musl/-/cli-linux-x64-musl-2.11.4.tgz", + "integrity": "sha512-o9GyhYor/nc7xarmwDE3ka2szuW3uuZzXjHWh64Q8YX5AtSgxdQkFWzrY4O8KiGtVNvFBI14H3Q49Qj5TOIP/A==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-win32-arm64-msvc": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-arm64-msvc/-/cli-win32-arm64-msvc-2.11.4.tgz", + "integrity": "sha512-ld5Ehb598m0VkYyylRPNeCFsBe/km0jxis6KgMpl3IGY6I/i1RwQXO05I1AsXUXO2WC6AvB/Lw4qTf/asiuEiQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-win32-ia32-msvc": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-ia32-msvc/-/cli-win32-ia32-msvc-2.11.4.tgz", + "integrity": "sha512-12Hxi0XX/H5VFxO/bGgHkFWhml9VMgEOu9CidjeCeTNQ1l6fpUlbiGgSP7CLI3PFtW9/FfbeHieZ+kyWK5H7CA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/cli-win32-x64-msvc": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-x64-msvc/-/cli-win32-x64-msvc-2.11.4.tgz", + "integrity": "sha512-+vDiqBIU5dMISg/wNvX3sF+ZHfgJGJ5T0AcO+EHNXV9GGAG+P5fzodlDXD3QdKCRgZxMoCm5PPvj3BqLNjBthw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 OR MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@tauri-apps/plugin-autostart": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@tauri-apps/plugin-autostart/-/plugin-autostart-2.5.1.tgz", + "integrity": "sha512-zS/xx7yzveCcotkA+8TqkI2lysmG2wvQXv2HGAVExITmnFfHAdj1arGsbbfs3o6EktRHf6l34pJxc3YGG2mg7w==", + "license": "MIT OR Apache-2.0", + "dependencies": { + "@tauri-apps/api": "^2.8.0" + } + }, + "node_modules/@tauri-apps/plugin-clipboard-manager": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@tauri-apps/plugin-clipboard-manager/-/plugin-clipboard-manager-2.3.2.tgz", + "integrity": "sha512-CUlb5Hqi2oZbcZf4VUyUH53XWPPdtpw43EUpCza5HWZJwxEoDowFzNUDt1tRUXA8Uq+XPn17Ysfptip33sG4eQ==", + "license": "MIT OR Apache-2.0", + "dependencies": { + "@tauri-apps/api": "^2.8.0" + } + }, + "node_modules/@tauri-apps/plugin-dialog": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@tauri-apps/plugin-dialog/-/plugin-dialog-2.7.2.tgz", + "integrity": "sha512-pX0IGm1I3I6wc+zeKYcq1GSqogK6okCNX5fOdaNU5ab1AjGS6l1E5wFNjEb7meg7ZFSp0JUs+0jQGQNyOvLrsg==", + "license": "MIT OR Apache-2.0", + "dependencies": { + "@tauri-apps/api": "^2.11.0" + } + }, + "node_modules/@tauri-apps/plugin-global-shortcut": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@tauri-apps/plugin-global-shortcut/-/plugin-global-shortcut-2.3.2.tgz", + "integrity": "sha512-UReHNXrLvpEjylE4jb4oCYiy96uRykPUthoCQCmRXYrd5hs5X9DrW+qOn7GLW57EJN4tdK8bgK5twBTz2NOxzA==", + "license": "MIT OR Apache-2.0", + "dependencies": { + "@tauri-apps/api": "^2.11.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.28.0", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", + "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.28.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/prop-types": { + "version": "15.7.15", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", + "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.31", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.31.tgz", + "integrity": "sha512-vfEqpXTvwT91yhmwdfouStN2hSKwTvyRs8qpLfADyrq/kxDw0hZM7Wk9Ug1FELj8hIby+S/+kQCSRFF32nv2Qw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.2.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz", + "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@types/react": "^18.0.0" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz", + "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.28.0", + "@babel/plugin-transform-react-jsx-self": "^7.27.1", + "@babel/plugin-transform-react-jsx-source": "^7.27.1", + "@rolldown/pluginutils": "1.0.0-beta.27", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.17.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0" + } + }, + "node_modules/baseline-browser-mapping": { + "version": "2.11.19", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.19.tgz", + "integrity": "sha512-Grytf1xOxOEMTGRwx6rLGKkTabd4vMg3VrKdj/7joCmV0qgh4QwMMO6xh34YEXQqirAuUdgQGa5orJQQ+69RBw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "baseline-browser-mapping": "dist/cli.cjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/browserslist": { + "version": "4.28.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.8.tgz", + "integrity": "sha512-V2NpofLblG64mfOtSgDhOJESZEGogzDMBv/q+W6oc4LXWP/q75eOXoOaaOu1EOadB9U4Bwx/e0yzbvwKH8zalA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "baseline-browser-mapping": "^2.11.12", + "caniuse-lite": "^1.0.30001809", + "electron-to-chromium": "^1.5.402", + "node-releases": "^2.0.53", + "update-browserslist-db": "^1.3.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001810", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001810.tgz", + "integrity": "sha512-TITQPUkaz+aVk5GL6NhOdwk1aEaNTSDPsGFWrTuhKGtjTF70jL/Oht2W4c6rXUe5fu7Ie19VIahAXHIIiWWNeg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.414", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.414.tgz", + "integrity": "sha512-aYlviXiaXBbzvKgyALpcMmqa3Np3sDr0XnZbEG62n2UpZFbEcjQ4EEMOLGzVPhwVnwTz0lvKY+GcARbunuHekw==", + "dev": true, + "license": "ISC" + }, + "node_modules/esbuild": { + "version": "0.25.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz", + "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.12", + "@esbuild/android-arm": "0.25.12", + "@esbuild/android-arm64": "0.25.12", + "@esbuild/android-x64": "0.25.12", + "@esbuild/darwin-arm64": "0.25.12", + "@esbuild/darwin-x64": "0.25.12", + "@esbuild/freebsd-arm64": "0.25.12", + "@esbuild/freebsd-x64": "0.25.12", + "@esbuild/linux-arm": "0.25.12", + "@esbuild/linux-arm64": "0.25.12", + "@esbuild/linux-ia32": "0.25.12", + "@esbuild/linux-loong64": "0.25.12", + "@esbuild/linux-mips64el": "0.25.12", + "@esbuild/linux-ppc64": "0.25.12", + "@esbuild/linux-riscv64": "0.25.12", + "@esbuild/linux-s390x": "0.25.12", + "@esbuild/linux-x64": "0.25.12", + "@esbuild/netbsd-arm64": "0.25.12", + "@esbuild/netbsd-x64": "0.25.12", + "@esbuild/openbsd-arm64": "0.25.12", + "@esbuild/openbsd-x64": "0.25.12", + "@esbuild/openharmony-arm64": "0.25.12", + "@esbuild/sunos-x64": "0.25.12", + "@esbuild/win32-arm64": "0.25.12", + "@esbuild/win32-ia32": "0.25.12", + "@esbuild/win32-x64": "0.25.12" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/lucide-react": { + "version": "0.468.0", + "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.468.0.tgz", + "integrity": "sha512-6koYRhnM2N0GGZIdXzSeiNwguv1gt/FAjZOiPl76roBi3xKEXa4WmfpxgQwTTL4KipXjefrnf3oV4IsYhi4JFA==", + "license": "ISC", + "peerDependencies": { + "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.18", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz", + "integrity": "sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/node-releases": { + "version": "2.0.53", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.53.tgz", + "integrity": "sha512-D9UOmYG3UH1V+ENW56t5QXBwJw1YEY18ruVeus89Rw+SyIgjPkCO84bRzO3uNIYosJbNwiabWVn48o3uJLjxFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.7.tgz", + "integrity": "sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/postcss": { + "version": "8.5.26", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.26.tgz", + "integrity": "sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.17", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/react-refresh": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz", + "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.62.5.tgz", + "integrity": "sha512-/tqMfgP7GPA3PHhCmuiS4vIjrSVhHLgY++i+dhbG462euyAj7FpM4D9uq1X3BgjlqRdpcOrYhcQtfiQLNc8tqw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.9" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@napi-rs/lzma-linux-x64-gnu": "1.5.1", + "@rollup/rollup-android-arm-eabi": "4.62.5", + "@rollup/rollup-android-arm64": "4.62.5", + "@rollup/rollup-darwin-arm64": "4.62.5", + "@rollup/rollup-darwin-x64": "4.62.5", + "@rollup/rollup-freebsd-arm64": "4.62.5", + "@rollup/rollup-freebsd-x64": "4.62.5", + "@rollup/rollup-linux-arm-gnueabihf": "4.62.5", + "@rollup/rollup-linux-arm-musleabihf": "4.62.5", + "@rollup/rollup-linux-arm64-gnu": "4.62.5", + "@rollup/rollup-linux-arm64-musl": "4.62.5", + "@rollup/rollup-linux-loong64-gnu": "4.62.5", + "@rollup/rollup-linux-loong64-musl": "4.62.5", + "@rollup/rollup-linux-ppc64-gnu": "4.62.5", + "@rollup/rollup-linux-ppc64-musl": "4.62.5", + "@rollup/rollup-linux-riscv64-gnu": "4.62.5", + "@rollup/rollup-linux-riscv64-musl": "4.62.5", + "@rollup/rollup-linux-s390x-gnu": "4.62.5", + "@rollup/rollup-linux-x64-gnu": "4.62.5", + "@rollup/rollup-linux-x64-musl": "4.62.5", + "@rollup/rollup-openbsd-x64": "4.62.5", + "@rollup/rollup-openharmony-arm64": "4.62.5", + "@rollup/rollup-win32-arm64-msvc": "4.62.5", + "@rollup/rollup-win32-ia32-msvc": "4.62.5", + "@rollup/rollup-win32-x64-gnu": "4.62.5", + "@rollup/rollup-win32-x64-msvc": "4.62.5", + "fsevents": "~2.3.2" + } + }, + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz", + "integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/typescript": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", + "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.1.tgz", + "integrity": "sha512-ZZ61DsRsOnakl74HAmp3oSN4aXUmEWXf+i/yv0h7tIBfICc3VdrFErQKUUKPgu3AMsTUMbcongALEN4l6GSUrQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/vite": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.4.3.tgz", + "integrity": "sha512-NTKlcQjlAK7MlQoyb6LgaqHc8sso/pVyUJYWMws3jg21uTJw/LddqIFPcPqP6PzpgbIcZyKI85sFE4HBrQDA8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.25.0", + "fdir": "^6.4.4", + "picomatch": "^4.0.2", + "postcss": "^8.5.3", + "rollup": "^4.34.9", + "tinyglobby": "^0.2.13" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..f28e661 --- /dev/null +++ b/package.json @@ -0,0 +1,30 @@ +{ + "name": "snaplet", + "private": true, + "version": "0.1.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "tsc && vite build", + "preview": "vite preview", + "tauri": "tauri" + }, + "dependencies": { + "@tauri-apps/api": "^2.8.0", + "@tauri-apps/plugin-autostart": "^2.5.0", + "@tauri-apps/plugin-clipboard-manager": "^2.3.0", + "@tauri-apps/plugin-dialog": "^2.4.0", + "@tauri-apps/plugin-global-shortcut": "^2.3.0", + "lucide-react": "^0.468.0", + "react": "^18.3.1", + "react-dom": "^18.3.1" + }, + "devDependencies": { + "@tauri-apps/cli": "^2.8.0", + "@types/react": "^18.3.18", + "@types/react-dom": "^18.3.5", + "@vitejs/plugin-react": "^4.3.4", + "typescript": "~5.7.2", + "vite": "^6.0.5" + } +} diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock new file mode 100644 index 0000000..3d35aeb --- /dev/null +++ b/src-tauri/Cargo.lock @@ -0,0 +1,6781 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "adler2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" + +[[package]] +name = "aho-corasick" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c982642fa9e8606056828ee9a8505737230110bb1099153c79efe865c59d12ba" +dependencies = [ + "memchr", +] + +[[package]] +name = "aligned" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee4508988c62edf04abd8d92897fca0c2995d907ce1dfeaf369dac3716a40685" +dependencies = [ + "as-slice", +] + +[[package]] +name = "aligned-vec" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc890384c8602f339876ded803c97ad529f3842aba97f6392b3dba0dd171769b" +dependencies = [ + "equator", +] + +[[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.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e76a019e91224d279006ff972f1e984179a6e9feb050adba6ce8274aef23195" +dependencies = [ + "alloc-no-stdlib", +] + +[[package]] +name = "android_system_properties" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae221649c9976a6f6c56ae1facf410f3ddb33cc661c4b7b61020a912d4237fbc" +dependencies = [ + "libc", +] + +[[package]] +name = "annotate-snippets" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccaf7e9dfbb6ab22c82e473cd1a8a7bd313c19a5b7e40970f3d89ef5a5c9e81e" +dependencies = [ + "unicode-width", + "yansi-term", +] + +[[package]] +name = "anyhow" +version = "1.0.104" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470" + +[[package]] +name = "arbitrary" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3d036a3c4ab069c7b410a2ce876bd74808d2d0888a82667669f8e783a898bf1" + +[[package]] +name = "arboard" +version = "3.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0348a1c054491f4bfe6ab86a7b6ab1e44e45d899005de92f58b3df180b36ddaf" +dependencies = [ + "clipboard-win", + "image", + "log", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation", + "parking_lot", + "percent-encoding", + "windows-sys 0.60.2", + "wl-clipboard-rs", + "x11rb", +] + +[[package]] +name = "arg_enum_proc_macro" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "arrayvec" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3fb67a6e08acf24fdeccbac2cb6ac4305825bd1f117462e0e6f2f193345ad56" + +[[package]] +name = "as-slice" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "516b6b4f0e40d50dcda9365d53964ec74560ad4284da2e7fc97122cd83174516" +dependencies = [ + "stable_deref_trait", +] + +[[package]] +name = "async-broadcast" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" +dependencies = [ + "event-listener", + "event-listener-strategy", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-channel" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2" +dependencies = [ + "concurrent-queue", + "event-listener-strategy", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-executor" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c96bf972d85afc50bf5ab8fe2d54d1586b4e0b46c97c50a0c9e71e2f7bcd812a" +dependencies = [ + "async-task", + "concurrent-queue", + "fastrand", + "futures-lite", + "pin-project-lite", + "slab", +] + +[[package]] +name = "async-io" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "456b8a8feb6f42d237746d4b3e9a178494627745c3c56c6ea55d92ba50d026fc" +dependencies = [ + "autocfg", + "cfg-if", + "concurrent-queue", + "futures-io", + "futures-lite", + "parking", + "polling", + "rustix 1.1.4", + "slab", + "windows-sys 0.61.2", +] + +[[package]] +name = "async-lock" +version = "3.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290f7f2596bd5b78a9fec8088ccd89180d7f9f55b94b0576823bbbdc72ee8311" +dependencies = [ + "event-listener", + "event-listener-strategy", + "pin-project-lite", +] + +[[package]] +name = "async-process" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc50921ec0055cdd8a16de48773bfeec5c972598674347252c0399676be7da75" +dependencies = [ + "async-channel", + "async-io", + "async-lock", + "async-signal", + "async-task", + "blocking", + "cfg-if", + "event-listener", + "futures-lite", + "rustix 1.1.4", +] + +[[package]] +name = "async-recursion" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "async-signal" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52b5aaafa020cf5053a01f2a60e8ff5dccf550f0f77ec54a4e47285ac2bab485" +dependencies = [ + "async-io", + "async-lock", + "atomic-waker", + "cfg-if", + "futures-core", + "futures-io", + "rustix 1.1.4", + "signal-hook-registry", + "slab", + "windows-sys 0.61.2", +] + +[[package]] +name = "async-task" +version = "4.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" + +[[package]] +name = "async-trait" +version = "0.1.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82f6aeea286b8eb4dd3431a1be1b59d290ace00f5bfd8e2a159bc2a05e2c1667" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "atk" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "241b621213072e993be4f6f3a9e4b45f65b7e6faad43001be957184b7bb1824b" +dependencies = [ + "atk-sys", + "glib", + "libc", +] + +[[package]] +name = "atk-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5e48b684b0ca77d2bbadeef17424c2ea3c897d44d566a1617e7e8f30614d086" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "auto-launch" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f012b8cc0c850f34117ec8252a44418f2e34a2cf501de89e29b241ae5f79471" +dependencies = [ + "dirs 4.0.0", + "thiserror 1.0.69", + "winreg 0.10.1", +] + +[[package]] +name = "autocfg" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53" + +[[package]] +name = "av-scenechange" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f321d77c20e19b92c39e7471cf986812cbb46659d2af674adc4331ef3f18394" +dependencies = [ + "aligned", + "anyhow", + "arg_enum_proc_macro", + "arrayvec", + "log", + "num-rational", + "num-traits", + "pastey", + "rayon", + "thiserror 2.0.20", + "v_frame", + "y4m", +] + +[[package]] +name = "av1-grain" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cfddb07216410377231960af4fcab838eaa12e013417781b78bd95ee22077f8" +dependencies = [ + "anyhow", + "arrayvec", + "log", + "nom 8.0.0", + "num-rational", + "v_frame", +] + +[[package]] +name = "avif-serialize" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7178fe5f7d460b13895ebb9dcb28a3a6216d2df2574a0806cb51b555d297f38" +dependencies = [ + "arrayvec", +] + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "bindgen" +version = "0.69.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" +dependencies = [ + "annotate-snippets", + "bitflags 2.13.1", + "cexpr", + "clang-sys", + "itertools 0.12.1", + "lazy_static", + "lazycell", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex 1.3.0", + "syn 2.0.119", +] + +[[package]] +name = "bit-set" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" +dependencies = [ + "bit-vec", +] + +[[package]] +name = "bit-vec" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" + +[[package]] +name = "bit_field" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e4b40c7323adcfc0a41c4b88143ed58346ff65a288fc144329c5c45e05d70c6" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b588b76d00fde79687d7646a9b5bdf3cc0f655e0bbd080335a95d7e96f3587da" +dependencies = [ + "serde_core", +] + +[[package]] +name = "bitstream-io" +version = "4.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7eff00be299a18769011411c9def0d827e8f2d7bf0c3dbf53633147a8867fd1f" +dependencies = [ + "no_std_io2", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "block2" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" +dependencies = [ + "objc2", +] + +[[package]] +name = "blocking" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a70e4329df6cb94385eed412ec92375c3cdd8a6e502493d1229b6414e4036dfa" +dependencies = [ + "async-channel", + "async-task", + "futures-io", + "futures-lite", + "piper", +] + +[[package]] +name = "brotli" +version = "8.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cc91aac060a7a1e25823bdccbfb6af1875b88f17c6daac97894eed8207166b3" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "5.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a32acac15fe1967bc3986b2a6347dffc965602354ea6f450ad07e8bfd253583" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + +[[package]] +name = "bs58" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "built" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c0e531d93d39c34eef561e929e8a7f86d77a5af08aac4f6d6e39976c51858e9" + +[[package]] +name = "bumpalo" +version = "3.20.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" + +[[package]] +name = "bytemuck" +version = "1.25.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95832e849adfb21180ccb6826a99da14e5d266ae5c2e668e1602cf234f153797" +dependencies = [ + "bytemuck_derive", +] + +[[package]] +name = "bytemuck_derive" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc0e56a716f1e132ff6bf4bdac1c944a3fcdc1cae65f70a4a2a1ac3b401d2d1f" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "byteorder-lite" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" + +[[package]] +name = "bytes" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04" +dependencies = [ + "serde", +] + +[[package]] +name = "cairo-rs" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2" +dependencies = [ + "bitflags 2.13.1", + "cairo-sys-rs", + "glib", + "libc", + "once_cell", + "thiserror 1.0.69", +] + +[[package]] +name = "cairo-sys-rs" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "camino" +version = "1.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb1307f12aa967b5a58416e87b3653360e0fd614a016b6e970db08fecbb1b80d" +dependencies = [ + "serde_core", +] + +[[package]] +name = "cargo-platform" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" +dependencies = [ + "camino", + "cargo-platform", + "semver", + "serde", + "serde_json", + "thiserror 2.0.20", +] + +[[package]] +name = "cargo_toml" +version = "0.22.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "374b7c592d9c00c1f4972ea58390ac6b18cbb6ab79011f3bdc90a0b82ca06b77" +dependencies = [ + "serde", + "toml 0.9.12+spec-1.1.0", +] + +[[package]] +name = "cc" +version = "1.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ad534f4357a5264cce5019c989cf66a4f0dc4e0d1b1d15f8aacec0ff7360273" +dependencies = [ + "find-msvc-tools", + "jobserver", + "libc", + "shlex 2.0.1", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom 7.1.3", +] + +[[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.15.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" +dependencies = [ + "smallvec", + "target-lexicon", +] + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "chrono" +version = "0.4.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aa79e62e7697b8e29b513a68abacf485adcd1fe8284a4316c5ae868e6633327" +dependencies = [ + "iana-time-zone", + "num-traits", + "serde", + "windows-link 0.2.1", +] + +[[package]] +name = "clang-sys" +version = "1.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "157a8ba7b480713b56f4c09fd13fc3e0a22a5dfab8097ba61cbc5feef950788a" +dependencies = [ + "glob", + "libc", + "libloading 0.8.9", +] + +[[package]] +name = "clipboard-win" +version = "5.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bde03770d3df201d4fb868f2c9c59e66a3e4e2bd06692a0fe701e7103c7e84d4" +dependencies = [ + "error-code", +] + +[[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.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "concurrent-queue" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "cookie" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a373e3602691c3cdea496d2f0ee5935151e6168fe87739483c463db1b2f2f87" +dependencies = [ + "time", + "version_check", +] + +[[package]] +name = "cookie-factory" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9885fa71e26b8ab7855e2ec7cae6e9b380edff76cd052e07c683a0319d51b3a2" +dependencies = [ + "futures", +] + +[[package]] +name = "core-foundation" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "core-graphics" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "064badf302c3194842cf2c5d61f56cc88e54a759313879cdf03abdd27d0c3b97" +dependencies = [ + "bitflags 2.13.1", + "core-foundation", + "core-graphics-types", + "foreign-types", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" +dependencies = [ + "bitflags 2.13.1", + "core-foundation", + "libc", +] + +[[package]] +name = "cpufeatures" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +dependencies = [ + "libc", +] + +[[package]] +name = "crc32fast" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8498c871161e1742aaa9d52551b2d6ebdd4c3d45a3be423e3728f33b955be550" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d85363c37faeca707aef026efa9f3b34d077bce547e48f770770625c6013679e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5181e0de7b61eb03a81e347d6dd8797bae9da5146707b51077e2d71a54ec0ceb" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d6914041f254d6e9176c01941b21115dcfb7089e55135a35411081bd106ef3f" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61803da095bee82a81bb1a452ecc25d3b2f1416d1897eb86430c6159ef717c17" + +[[package]] +name = "crunchy" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" + +[[package]] +name = "crypto-common" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "cssparser" +version = "0.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dae61cf9c0abb83bd659dab65b7e4e38d8236824c85f0f804f173567bda257d2" +dependencies = [ + "cssparser-macros", + "dtoa-short", + "itoa", + "phf", + "smallvec", +] + +[[package]] +name = "cssparser-macros" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" +dependencies = [ + "quote", + "syn 2.0.119", +] + +[[package]] +name = "ctor" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "352d39c2f7bef1d6ad73db6f5160efcaed66d94ef8c6c573a8410c00bf909a98" +dependencies = [ + "ctor-proc-macro", + "dtor", +] + +[[package]] +name = "ctor-proc-macro" +version = "0.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52560adf09603e58c9a7ee1fe1dcb95a16927b17c127f0ac02d6e768a0e25bc1" + +[[package]] +name = "darling" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" +dependencies = [ + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.119", +] + +[[package]] +name = "darling_macro" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "dbus" +version = "0.9.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ab69f03cc8c4340c9c8e315114e1658e6775a9b16a04357973aa21cec22b32e" +dependencies = [ + "libc", + "libdbus-sys", + "windows-sys 0.61.2", +] + +[[package]] +name = "defmt" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2953bfe4f93bbd20cc71198842756f77d161884c99ebbabc41d80231ded88d1" +dependencies = [ + "bitflags 1.3.2", + "defmt-macros", +] + +[[package]] +name = "defmt-macros" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bad9c72e7ca2137e0dc3813245a0d282fd6daad32fd800af018306a9169b5fe8" +dependencies = [ + "defmt-parser", + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "defmt-parser" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10d60334b3b2e7c9d91ef8150abfb6fa4c1c39ebbcf4a81c2e346aad939fee3e" +dependencies = [ + "thiserror 2.0.20", +] + +[[package]] +name = "deranged" +version = "0.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" +dependencies = [ + "serde_core", +] + +[[package]] +name = "derive_more" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" +dependencies = [ + "proc-macro2", + "quote", + "rustc_version", + "syn 2.0.119", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "dirs" +version = "4.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" +dependencies = [ + "dirs-sys 0.3.7", +] + +[[package]] +name = "dirs" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" +dependencies = [ + "dirs-sys 0.5.0", +] + +[[package]] +name = "dirs-sys" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" +dependencies = [ + "libc", + "redox_users 0.4.6", + "winapi", +] + +[[package]] +name = "dirs-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" +dependencies = [ + "libc", + "option-ext", + "redox_users 0.5.2", + "windows-sys 0.61.2", +] + +[[package]] +name = "dispatch2" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38" +dependencies = [ + "bitflags 2.13.1", + "block2", + "libc", + "objc2", +] + +[[package]] +name = "displaydoc" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "dlib" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab8ecd87370524b461f8557c119c405552c396ed91fc0a8eec68679eab26f94a" +dependencies = [ + "libloading 0.8.9", +] + +[[package]] +name = "dlopen2" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e2c5bd4158e66d1e215c49b837e11d62f3267b30c92f1d171c4d3105e3dc4d4" +dependencies = [ + "dlopen2_derive", + "libc", + "once_cell", + "winapi", +] + +[[package]] +name = "dlopen2_derive" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fbbb781877580993a8707ec48672673ec7b81eeba04cfd2310bd28c08e47c8f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "dom_query" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "521e380c0c8afb8d9a1e83a1822ee03556fc3e3e7dbc1fd30be14e37f9cb3f89" +dependencies = [ + "bit-set", + "cssparser", + "foldhash 0.2.0", + "html5ever", + "precomputed-hash", + "selectors", + "tendril", +] + +[[package]] +name = "downcast-rs" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" + +[[package]] +name = "dpi" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76" +dependencies = [ + "serde", +] + +[[package]] +name = "drm" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80bc8c5c6c2941f70a55c15f8d9f00f9710ebda3ffda98075f996a0e6c92756f" +dependencies = [ + "bitflags 2.13.1", + "bytemuck", + "drm-ffi", + "drm-fourcc", + "libc", + "rustix 0.38.44", +] + +[[package]] +name = "drm" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a41816e58f47f49acfd956651055ddcf137c4882c2098c30c448817af21183a" +dependencies = [ + "bitflags 2.13.1", + "bytemuck", + "bytemuck_derive", + "drm-ffi", + "drm-fourcc", + "libc", + "rustix 1.1.4", +] + +[[package]] +name = "drm-ffi" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51a91c9b32ac4e8105dec255e849e0d66e27d7c34d184364fb93e469db08f690" +dependencies = [ + "drm-sys", + "rustix 1.1.4", +] + +[[package]] +name = "drm-fourcc" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4" + +[[package]] +name = "drm-sys" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc8e1361066d91f5ffccff060a3c3be9c3ecde15be2959c1937595f7a82a9f8" +dependencies = [ + "libc", + "linux-raw-sys 0.9.4", +] + +[[package]] +name = "dtoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c3cf4824e2d5f025c7b531afcb2325364084a16806f6d47fbc1f5fbd9960590" + +[[package]] +name = "dtoa-short" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87" +dependencies = [ + "dtoa", +] + +[[package]] +name = "dtor" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1057d6c64987086ff8ed0fd3fbf377a6b7d205cc7715868cd401705f715cbe4" +dependencies = [ + "dtor-proc-macro", +] + +[[package]] +name = "dtor-proc-macro" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f678cf4a922c215c63e0de95eb1ff08a958a81d47e485cf9da1e27bf6305cfa5" + +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + +[[package]] +name = "dyn-clone" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" + +[[package]] +name = "either" +version = "1.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "252afb9ae5eaa683babdc6a068b3f5726eb19e05070c731f9b2a23a7c3e8ed34" + +[[package]] +name = "embed-resource" +version = "3.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbfdaacccebec3b28e4866b8973543c7647797db5ada1bdab552e48fe665fbbd" +dependencies = [ + "cc", + "memchr", + "rustc_version", + "toml 1.1.4+spec-1.1.0", + "vswhom", + "winreg 0.55.0", +] + +[[package]] +name = "embed_plist" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7" + +[[package]] +name = "endi" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66b7e2430c6dff6a955451e2cfc438f09cea1965a9d6f87f7e3b90decc014099" + +[[package]] +name = "enumflags2" +version = "0.7.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1027f7680c853e056ebcec683615fb6fbbc07dbaa13b4d5d9442b146ded4ecef" +dependencies = [ + "enumflags2_derive", + "serde", +] + +[[package]] +name = "enumflags2_derive" +version = "0.7.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67c78a4d8fdf9953a5c9d458f9efe940fd97a0cab0941c075a813ac594733827" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "equator" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4711b213838dfee0117e3be6ac926007d7f433d7bbe33595975d4190cb07e6fc" +dependencies = [ + "equator-macro", +] + +[[package]] +name = "equator-macro" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "erased-serde" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2add8a07dd6a8d93ff627029c51de145e12686fbc36ecb298ac22e74cf02dec" +dependencies = [ + "serde", + "serde_core", + "typeid", +] + +[[package]] +name = "errno" +version = "0.3.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "error-code" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b5343afd4a8365a643ac588dab4cf234a190c7f6c88c9f6dd6ffe00837661b7" + +[[package]] +name = "event-listener" +version = "5.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a23add41df1562121a9393cb065eab5146a1242410f23a644851e90cfd669d2" +dependencies = [ + "parking", + "pin-project-lite", +] + +[[package]] +name = "event-listener-strategy" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" +dependencies = [ + "event-listener", + "pin-project-lite", +] + +[[package]] +name = "exr" +version = "1.74.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711fe42c9964295e01ee3fba3f9fe0e1d24b98886950d68efe81b1c76e21adf3" +dependencies = [ + "bit_field", + "half", + "lebe", + "miniz_oxide", + "num-complex", + "pulp", + "rayon-core", + "smallvec", + "zune-inflate", +] + +[[package]] +name = "fastrand" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223" + +[[package]] +name = "fax" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caf1079563223d5d59d83c85886a56e586cfd5c1a26292e971a0fa266531ac5a" + +[[package]] +name = "fdeflate" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c" +dependencies = [ + "simd-adler32", +] + +[[package]] +name = "field-offset" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f" +dependencies = [ + "memoffset", + "rustc_version", +] + +[[package]] +name = "find-msvc-tools" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d45db016d36b838f563236e9193d0ee6ce38f3f68b6c94e914b4929c96bbb890" + +[[package]] +name = "fixedbitset" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" + +[[package]] +name = "flate2" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" +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 = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + +[[package]] +name = "foreign-types" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" +dependencies = [ + "foreign-types-macros", + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-macros" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea5190182e6915eb873ddbc16e23b711b6eb1f9c00a0d0a3a91b5f6228475225" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "foreign-types-shared" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" + +[[package]] +name = "form_urlencoded" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futures" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a31d2a3fbaaeb2af2368bbdd904aa8e812d3c04a1ee10d3171f52d556e5d0a3" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f9e3d69d39e4862ffed03ed071a76f9a13ba1d9109d355b0f0aa6b15e393c4" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92d699e522242e69e3003b94ecc1f960f3a5e015aa7c5d7486e65ad01dd94f5e" + +[[package]] +name = "futures-executor" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "031b47cf1a3c6cc8bc2fc76cd437f521619387907d469316e7c0bc278f1f5432" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53c0fa8157de1303bfffdaa1cc2a673bfffb60102f76b0ef4441659124373fed" + +[[package]] +name = "futures-lite" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f78e10609fe0e0b3f4157ffab1876319b5b0db102a2c60dc4626306dc46b44ad" +dependencies = [ + "fastrand", + "futures-core", + "futures-io", + "parking", + "pin-project-lite", +] + +[[package]] +name = "futures-macro" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb9654ba8355388abeb8dcb4fc62f511300867002afc858860463bdd9fe0c44" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "futures-sink" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1944426bf7d03f1d14f708785e4b33efd750b36d48a157b836b3efc15ede8e1d" + +[[package]] +name = "futures-task" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd417de3d1d015fc3bfd2b1ea46dfc7bab72ef86f1cc7cc9c78e728b34a6d1fd" + +[[package]] +name = "futures-util" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d50a92467f8ba5dd6e3ee5d4bd04d73ab2e4e1c44474a0674821dfce14b79bc" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "slab", +] + +[[package]] +name = "gbm" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce852e998d3ca5e4a97014fb31c940dc5ef344ec7d364984525fd11e8a547e6a" +dependencies = [ + "bitflags 2.13.1", + "drm 0.14.1", + "drm-fourcc", + "gbm-sys", + "libc", + "wayland-backend", + "wayland-server", +] + +[[package]] +name = "gbm-sys" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c13a5f2acc785d8fb6bf6b7ab6bfb0ef5dad4f4d97e8e70bb8e470722312f76f" +dependencies = [ + "libc", +] + +[[package]] +name = "gdk" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9f245958c627ac99d8e529166f9823fb3b838d1d41fd2b297af3075093c2691" +dependencies = [ + "cairo-rs", + "gdk-pixbuf", + "gdk-sys", + "gio", + "glib", + "libc", + "pango", +] + +[[package]] +name = "gdk-pixbuf" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50e1f5f1b0bfb830d6ccc8066d18db35c487b1b2b1e8589b5dfe9f07e8defaec" +dependencies = [ + "gdk-pixbuf-sys", + "gio", + "glib", + "libc", + "once_cell", +] + +[[package]] +name = "gdk-pixbuf-sys" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7" +dependencies = [ + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "gdk-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c2d13f38594ac1e66619e188c6d5a1adb98d11b2fcf7894fc416ad76aa2f3f7" +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.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "140071d506d223f7572b9f09b5e155afbd77428cd5cc7af8f2694c41d98dfe69" +dependencies = [ + "gdk-sys", + "glib-sys", + "gobject-sys", + "libc", + "pkg-config", + "system-deps", +] + +[[package]] +name = "gdkx11" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3caa00e14351bebbc8183b3c36690327eb77c49abc2268dd4bd36b856db3fbfe" +dependencies = [ + "gdk", + "gdkx11-sys", + "gio", + "glib", + "libc", + "x11", +] + +[[package]] +name = "gdkx11-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e2e7445fe01ac26f11601db260dd8608fe172514eb63b3b5e261ea6b0f4428d" +dependencies = [ + "gdk-sys", + "glib-sys", + "libc", + "system-deps", + "x11", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "gethostname" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bd49230192a3797a9a4d6abe9b3eed6f7fa4c8a8a4947977c6f80025f92cbd8" +dependencies = [ + "rustix 1.1.4", + "windows-link 0.2.1", +] + +[[package]] +name = "getrandom" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" +dependencies = [ + "cfg-if", + "libc", + "wasi", +] + +[[package]] +name = "getrandom" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +dependencies = [ + "cfg-if", + "libc", + "r-efi 5.3.0", + "wasip2", +] + +[[package]] +name = "getrandom" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" +dependencies = [ + "cfg-if", + "libc", + "r-efi 6.0.0", +] + +[[package]] +name = "gif" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee8cfcc411d9adbbaba82fb72661cc1bcca13e8bba98b364e62b2dba8f960159" +dependencies = [ + "color_quant", + "weezl", +] + +[[package]] +name = "gio" +version = "0.18.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "gio-sys", + "glib", + "libc", + "once_cell", + "pin-project-lite", + "smallvec", + "thiserror 1.0.69", +] + +[[package]] +name = "gio-sys" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", + "winapi", +] + +[[package]] +name = "gl" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a94edab108827d67608095e269cf862e60d920f144a5026d3dbcfd8b877fb404" +dependencies = [ + "gl_generator", +] + +[[package]] +name = "gl_generator" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d" +dependencies = [ + "khronos_api", + "log", + "xml-rs", +] + +[[package]] +name = "glib" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5" +dependencies = [ + "bitflags 2.13.1", + "futures-channel", + "futures-core", + "futures-executor", + "futures-task", + "futures-util", + "gio-sys", + "glib-macros", + "glib-sys", + "gobject-sys", + "libc", + "memchr", + "once_cell", + "smallvec", + "thiserror 1.0.69", +] + +[[package]] +name = "glib-macros" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bb0228f477c0900c880fd78c8759b95c7636dbd7842707f49e132378aa2acdc" +dependencies = [ + "heck 0.4.1", + "proc-macro-crate 2.0.2", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "glib-sys" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898" +dependencies = [ + "libc", + "system-deps", +] + +[[package]] +name = "glob" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4eba85ea1d0a966a983acd07deee566e67395d2d96b6fb39e62b5a833f1eb0b" + +[[package]] +name = "global-hotkey" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c386b0a4a70cb2d39fffd74480f985b6f0bfbcb934b6a6b6b7e630e448f242e" +dependencies = [ + "crossbeam-channel", + "keyboard-types", + "objc2", + "objc2-app-kit", + "once_cell", + "serde", + "thiserror 2.0.20", + "windows-sys 0.59.0", + "x11rb", + "xkeysym", +] + +[[package]] +name = "gobject-sys" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "gtk" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd56fb197bfc42bd5d2751f4f017d44ff59fbb58140c6b49f9b3b2bdab08506a" +dependencies = [ + "atk", + "cairo-rs", + "field-offset", + "futures-channel", + "gdk", + "gdk-pixbuf", + "gio", + "glib", + "gtk-sys", + "gtk3-macros", + "libc", + "pango", + "pkg-config", +] + +[[package]] +name = "gtk-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f29a1c21c59553eb7dd40e918be54dccd60c52b049b75119d5d96ce6b624414" +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.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52ff3c5b21f14f0736fed6dcfc0bfb4225ebf5725f3c0209edeec181e4d73e9d" +dependencies = [ + "proc-macro-crate 1.3.1", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "half" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" +dependencies = [ + "cfg-if", + "crunchy", + "zerocopy", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.15.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +dependencies = [ + "foldhash 0.1.5", +] + +[[package]] +name = "hashbrown" +version = "0.17.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a" + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hermit-abi" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + +[[package]] +name = "html5ever" +version = "0.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1054432bae2f14e0061e33d23402fbaa67a921d319d56adc6bcf887ddad1cbc2" +dependencies = [ + "log", + "markup5ever", +] + +[[package]] +name = "http" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "918d3568bebf352712bc2ef3d46a8bcf1a75b373be6539de198e9105cbbf9ce0" +dependencies = [ + "bytes", + "itoa", +] + +[[package]] +name = "http-body" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca2a8f2913ee65f60facd6a5905613afaa448497a0230cc41ce022d93290bc2c" +dependencies = [ + "bytes", + "http", +] + +[[package]] +name = "http-body-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23169fe34a5fbcdd3f3862e78fb9b6fccd5f02a6dc6f732547005d45631ce71c" +dependencies = [ + "bytes", + "futures-core", + "http", + "http-body", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" + +[[package]] +name = "hyper" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d22053281f852e11534f5198498373cbb59295120a20771d90f7ed1897490a72" +dependencies = [ + "atomic-waker", + "bytes", + "futures-channel", + "futures-core", + "http", + "http-body", + "httparse", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-util" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-channel", + "futures-util", + "http", + "http-body", + "hyper", + "ipnet", + "libc", + "percent-encoding", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core 0.62.2", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ico" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e795dff5605e0f04bff85ca41b51a96b83e80b281e96231bcaaf1ac35103371" +dependencies = [ + "byteorder", + "png 0.17.16", +] + +[[package]] +name = "icu_collections" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa68d21081c4a05d5a901a1c62add574c77048b6a1c67be3b50ce0b60d4ca513" +dependencies = [ + "displaydoc", + "potential_utf", + "utf8_iter", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locale_core" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d56e28588da92eee5c3201a6eff33fabdd49b62269c8938d4ff050ce4d900deb" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_normalizer" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f9cf5f235641ed274641dd81c3f28d870e276763d0797aeeab72317b1c646f" +dependencies = [ + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1563da1ed3e0b3bf3d74c9b85917ac9c56464d2f57242270c09c9e752f8021a0" + +[[package]] +name = "icu_properties" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e7ca276ad3145661a65914e6daf131ca5120cd3dcee8f8f3214b8875184a148" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locale_core", + "icu_properties_data", + "icu_provider", + "zerotrie", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e590f038c1464a96894fd6d10127e90a8be4509f56ff7ecef851b15cee0b7caa" + +[[package]] +name = "icu_provider" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d27bbb9d3abbefac45d55f647c9de1d44aafcd1186eb91879afef17c396c3e73" +dependencies = [ + "displaydoc", + "icu_locale_core", + "writeable", + "yoke", + "zerofrom", + "zerotrie", + "zerovec", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb68373c0d6620ef8105e855e7745e18b0d00d3bdb07fb532e434244cdb9a714" +dependencies = [ + "icu_normalizer", + "icu_properties", +] + +[[package]] +name = "image" +version = "0.25.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85ab80394333c02fe689eaf900ab500fbd0c2213da414687ebf995a65d5a6104" +dependencies = [ + "bytemuck", + "byteorder-lite", + "color_quant", + "exr", + "gif", + "image-webp", + "moxcms", + "num-traits", + "png 0.18.1", + "qoi", + "ravif", + "rayon", + "rgb", + "tiff", + "zune-core", + "zune-jpeg", +] + +[[package]] +name = "image-webp" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "525e9ff3e1a4be2fbea1fdf0e98686a6d98b4d8f937e1bf7402245af1909e8c3" +dependencies = [ + "byteorder-lite", + "quick-error", +] + +[[package]] +name = "imgref" +version = "1.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89194689a993ab15268672e99e7b0e19da2da3268ac682e8f02d29d4d1434cd7" + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" +dependencies = [ + "equivalent", + "hashbrown 0.17.1", + "serde", + "serde_core", +] + +[[package]] +name = "infer" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a588916bfdfd92e71cacef98a63d9b1f0d74d6599980d11894290e7ddefffcf7" +dependencies = [ + "cfb", +] + +[[package]] +name = "interpolate_name" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "ipnet" +version = "2.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a756c3fac73139e83f14c2d742155dd2b78d3ee56597b419a0579b7bdd6dd78" + +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" + +[[package]] +name = "javascriptcore-rs" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca5671e9ffce8ffba57afc24070e906da7fc4b1ba66f2cabebf61bf2ea257fcc" +dependencies = [ + "bitflags 1.3.2", + "glib", + "javascriptcore-rs-sys", +] + +[[package]] +name = "javascriptcore-rs-sys" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1be78d14ffa4b75b66df31840478fef72b51f8c2465d4ca7c194da9f7a5124" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "jiff" +version = "0.2.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "668b7183bd07af9a4885f5c35b0cc5c83c4607a913c16b7e17291832910d2dcc" +dependencies = [ + "defmt", + "jiff-core", + "jiff-static", + "jiff-tzdb-platform", + "log", + "portable-atomic", + "portable-atomic-util", + "serde_core", + "windows-link 0.2.1", +] + +[[package]] +name = "jiff-core" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7feca88439efe53da3754500c1851dedf3cb36c524dd5cf8225cc0794de95d09" +dependencies = [ + "defmt", +] + +[[package]] +name = "jiff-static" +version = "0.2.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a69dcb3a21cfb32ce1cd056169337ca284af0766dd766e7878819b251a49204" +dependencies = [ + "jiff-core", + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "jiff-tzdb" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "142bd39932ad231f10513df9ab62661fead8719872150b7ad02a2df79f4e141e" + +[[package]] +name = "jiff-tzdb-platform" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "875a5a69ac2bab1a891711cf5eccbec1ce0341ea805560dcd90b7a2e925132e8" +dependencies = [ + "jiff-tzdb", +] + +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys 0.3.1", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" +dependencies = [ + "jni-sys 0.4.1", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn 2.0.119", +] + +[[package]] +name = "jobserver" +version = "0.1.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c00acbd29eabad4a2392fa0e921c874934dbbf4194312ad20f04a0ed67a3cb3" +dependencies = [ + "getrandom 0.4.3", + "libc", +] + +[[package]] +name = "js-sys" +version = "0.3.104" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e0c1080212aad755ea003d18543e8768dd432c48819efd73a7bf1e39b7a5a3a" +dependencies = [ + "cfg-if", + "futures-util", + "wasm-bindgen", +] + +[[package]] +name = "json-patch" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "863726d7afb6bc2590eeff7135d923545e5e964f004c2ccf8716c25e70a86f08" +dependencies = [ + "jsonptr", + "serde", + "serde_json", + "thiserror 1.0.69", +] + +[[package]] +name = "jsonptr" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dea2b27dd239b2556ed7a25ba842fe47fd602e7fc7433c2a8d6106d4d9edd70" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "keyboard-types" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b750dcadc39a09dbadd74e118f6dd6598df77fa01df0cfcdc52c28dece74528a" +dependencies = [ + "bitflags 2.13.1", + "serde", + "unicode-segmentation", +] + +[[package]] +name = "khronos-egl" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76" +dependencies = [ + "libc", + "pkg-config", +] + +[[package]] +name = "khronos_api" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "lazycell" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + +[[package]] +name = "lebe" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a79a3332a6609480d7d0c9eab957bca6b455b91bb84e66d19f5ff66294b85b8" + +[[package]] +name = "libappindicator" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03589b9607c868cc7ae54c0b2a22c8dc03dd41692d48f2d7df73615c6a95dc0a" +dependencies = [ + "glib", + "gtk", + "gtk-sys", + "libappindicator-sys", + "log", +] + +[[package]] +name = "libappindicator-sys" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e9ec52138abedcc58dc17a7c6c0c00a2bdb4f3427c7f63fa97fd0d859155caf" +dependencies = [ + "gtk-sys", + "libloading 0.7.4", + "once_cell", +] + +[[package]] +name = "libc" +version = "0.2.189" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2" + +[[package]] +name = "libdbus-sys" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "328c4789d42200f1eeec05bd86c9c13c7f091d2ba9a6ea35acdf51f31bc0f043" +dependencies = [ + "pkg-config", +] + +[[package]] +name = "libfuzzer-sys" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9fd2f41a1cba099f79a0b6b6c35656cf7c03351a7bae8ff0f28f25270f929d2" +dependencies = [ + "arbitrary", + "cc", +] + +[[package]] +name = "libloading" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +dependencies = [ + "cfg-if", + "winapi", +] + +[[package]] +name = "libloading" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" +dependencies = [ + "cfg-if", + "windows-link 0.2.1", +] + +[[package]] +name = "libm" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" + +[[package]] +name = "libredox" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28d0a00925a9f930d679b6789b721e3a7f9ed110f41b86d2497caa780c3a070a" +dependencies = [ + "libc", +] + +[[package]] +name = "libspa" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65f3a4b81b2a2d8c7f300643676202debd1b7c929dbf5c9bb89402ea11d19810" +dependencies = [ + "bitflags 2.13.1", + "cc", + "convert_case", + "cookie-factory", + "libc", + "libspa-sys", + "nix", + "nom 7.1.3", + "system-deps", +] + +[[package]] +name = "libspa-sys" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf0d9716420364790e85cbb9d3ac2c950bde16a7dd36f3209b7dfdfc4a24d01f" +dependencies = [ + "bindgen", + "cc", + "system-deps", +] + +[[package]] +name = "libwayshot-xcap" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea8a46e4d016ef464e386e4970f5415fe0939c2d63abe0c2f539c05ef88c5fe5" +dependencies = [ + "drm 0.15.0", + "gbm", + "gl", + "image", + "khronos-egl", + "memmap2", + "rustix 1.1.4", + "thiserror 2.0.20", + "tracing", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-protocols-wlr", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" + +[[package]] +name = "linux-raw-sys" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" + +[[package]] +name = "linux-raw-sys" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" + +[[package]] +name = "litemap" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47d9d19d1d6efa0109d2f65ff4c85cddd50bd572e5a00127ab10987290bcefae" + +[[package]] +name = "lock_api" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" +dependencies = [ + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9f8bd3e56ce4dfc153cf470fffbfa98c7620958b312ca5c3a4b8d5181fd13c6" + +[[package]] +name = "loop9" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fae87c125b03c1d2c0150c90365d7d6bcc53fb73a9acaef207d2d065860f062" +dependencies = [ + "imgref", +] + +[[package]] +name = "markup5ever" +version = "0.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8983d30f2915feeaaab2d6babdd6bc7e9ed1a00b66b5e6d74df19aa9c0e91862" +dependencies = [ + "log", + "tendril", + "web_atoms", +] + +[[package]] +name = "maybe-rayon" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519" +dependencies = [ + "cfg-if", + "rayon", +] + +[[package]] +name = "memchr" +version = "2.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf8baf1c55e62ffcace7a9f06f4bd9cd3f0c4beb022d3b367256b91b87513d98" + +[[package]] +name = "memmap2" +version = "0.9.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1219ed1b7f229ee7104d281dd01d6802fe28bb6e95d292942c4daacdeb798c0" +dependencies = [ + "libc", +] + +[[package]] +name = "memoffset" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +dependencies = [ + "adler2", + "simd-adler32", +] + +[[package]] +name = "mio" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30d65c71f1ce40ab09135ce117d742b9f8a19ff91a41a8b57ed50bc2de59c427" +dependencies = [ + "libc", + "wasi", + "windows-sys 0.61.2", +] + +[[package]] +name = "moxcms" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb85c154ba489f01b25c0d36ae69a87e4a1c73a72631fc6c0eb6dde34a73e44b" +dependencies = [ + "num-traits", + "pxfm", +] + +[[package]] +name = "muda" +version = "0.19.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1dd04e60bc0b07438a6771710ee1698f98f6ebbc7f89b61264af1563b8aeb878" +dependencies = [ + "crossbeam-channel", + "dpi", + "gtk", + "keyboard-types", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "once_cell", + "png 0.18.1", + "serde", + "thiserror 2.0.20", + "windows-sys 0.61.2", +] + +[[package]] +name = "ndk" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" +dependencies = [ + "bitflags 2.13.1", + "jni-sys 0.3.1", + "log", + "ndk-sys", + "num_enum", + "raw-window-handle", + "thiserror 1.0.69", +] + +[[package]] +name = "ndk-sys" +version = "0.6.0+11769913" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" +dependencies = [ + "jni-sys 0.3.1", +] + +[[package]] +name = "new_debug_unreachable" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" + +[[package]] +name = "nix" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" +dependencies = [ + "bitflags 2.13.1", + "cfg-if", + "libc", +] + +[[package]] +name = "no_std_io2" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418abd1b6d34fbf6cae440dc874771b0525a604428704c76e48b29a5e67b8003" +dependencies = [ + "memchr", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "nom" +version = "8.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df9761775871bdef83bee530e60050f7e54b1105350d6884eb0fb4f46c2f9405" +dependencies = [ + "memchr", +] + +[[package]] +name = "noop_proc_macro" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8" + +[[package]] +name = "num-bigint" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c89e69e7e0f03bea5ef08013795c25018e101932225a656383bd384495ecc367" +dependencies = [ + "num-integer", + "num-traits", +] + +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "bytemuck", + "num-traits", +] + +[[package]] +name = "num-conv" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "521739c6d2bac4aa25192232afe6841231376b2b26d4d9fae5ecf8ca5772e441" + +[[package]] +name = "num-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "num-integer" +version = "0.1.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ce2d95d4b3734dc35aa2f45e1aa22cd416814592a4f9d9205e11affd5b8e10b" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_enum" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d0bca838442ec211fa11de3a8b0e0e8f3a4522575b5c4c06ed722e005036f26" +dependencies = [ + "num_enum_derive", + "rustversion", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8" +dependencies = [ + "proc-macro-crate 3.5.0", + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "objc2" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a12a8ed07aefc768292f076dc3ac8c48f3781c8f2d5851dd3d98950e8c5a89f" +dependencies = [ + "objc2-encode", + "objc2-exception-helper", +] + +[[package]] +name = "objc2-app-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c" +dependencies = [ + "bitflags 2.13.1", + "block2", + "libc", + "objc2", + "objc2-cloud-kit", + "objc2-core-data", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-core-image", + "objc2-core-text", + "objc2-core-video", + "objc2-foundation", + "objc2-quartz-core", +] + +[[package]] +name = "objc2-av-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "478ae33fcac9df0a18db8302387c666b8ef08a3e2d62b510ca4fc278a384b6c0" +dependencies = [ + "bitflags 2.13.1", + "block2", + "dispatch2", + "objc2", + "objc2-avf-audio", + "objc2-core-audio-types", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-core-image", + "objc2-core-video", + "objc2-foundation", + "objc2-image-io", + "objc2-media-toolbox", + "objc2-quartz-core", +] + +[[package]] +name = "objc2-avf-audio" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13a380031deed8e99db00065c45937da434ca987c034e13b87e4441f9e4090be" +dependencies = [ + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-cloud-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73ad74d880bb43877038da939b7427bba67e9dd42004a18b809ba7d87cee241c" +dependencies = [ + "bitflags 2.13.1", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-audio" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1eebcea8b0dbff5f7c8504f3107c68fc061a3eb44932051c8cf8a68d969c3b2" +dependencies = [ + "dispatch2", + "objc2", + "objc2-core-audio-types", + "objc2-core-foundation", +] + +[[package]] +name = "objc2-core-audio-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a89f2ec274a0cf4a32642b2991e8b351a404d290da87bb6a9a9d8632490bd1c" +dependencies = [ + "bitflags 2.13.1", + "objc2", +] + +[[package]] +name = "objc2-core-data" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b402a653efbb5e82ce4df10683b6b28027616a2715e90009947d50b8dd298fa" +dependencies = [ + "bitflags 2.13.1", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" +dependencies = [ + "bitflags 2.13.1", + "block2", + "dispatch2", + "libc", + "objc2", +] + +[[package]] +name = "objc2-core-graphics" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" +dependencies = [ + "bitflags 2.13.1", + "block2", + "dispatch2", + "libc", + "objc2", + "objc2-core-foundation", + "objc2-io-surface", + "objc2-metal", +] + +[[package]] +name = "objc2-core-image" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5d563b38d2b97209f8e861173de434bd0214cf020e3423a52624cd1d989f006" +dependencies = [ + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-location" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca347214e24bc973fc025fd0d36ebb179ff30536ed1f80252706db19ee452009" +dependencies = [ + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-media" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05ec576860167a15dd9fce7fbee7512beb4e31f532159d3482d1f9c6caedf31d" +dependencies = [ + "bitflags 2.13.1", + "block2", + "dispatch2", + "objc2", + "objc2-core-audio", + "objc2-core-audio-types", + "objc2-core-foundation", + "objc2-core-video", +] + +[[package]] +name = "objc2-core-text" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cde0dfb48d25d2b4862161a4d5fcc0e3c24367869ad306b0c9ec0073bfed92d" +dependencies = [ + "bitflags 2.13.1", + "objc2", + "objc2-core-foundation", + "objc2-core-graphics", +] + +[[package]] +name = "objc2-core-video" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d425caf1df73233f29fd8a5c3e5edbc30d2d4307870f802d18f00d83dc5141a6" +dependencies = [ + "bitflags 2.13.1", + "block2", + "objc2", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-io-surface", + "objc2-metal", +] + +[[package]] +name = "objc2-encode" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" + +[[package]] +name = "objc2-exception-helper" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7a1c5fbb72d7735b076bb47b578523aedc40f3c439bea6dfd595c089d79d98a" +dependencies = [ + "cc", +] + +[[package]] +name = "objc2-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" +dependencies = [ + "bitflags 2.13.1", + "block2", + "libc", + "objc2", + "objc2-core-foundation", +] + +[[package]] +name = "objc2-image-io" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32b0446e98cf4a784cc7a0177715ff317eeaa8463841c616cfc78aa4f953c4ea" +dependencies = [ + "objc2", + "objc2-core-foundation", + "objc2-core-graphics", +] + +[[package]] +name = "objc2-io-surface" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "180788110936d59bab6bd83b6060ffdfffb3b922ba1396b312ae795e1de9d81d" +dependencies = [ + "bitflags 2.13.1", + "objc2", + "objc2-core-foundation", +] + +[[package]] +name = "objc2-media-toolbox" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edd9fdde720df3da7046bb9097811000c1e7ab5cd579fa89d96b27d56781fb30" +dependencies = [ + "objc2", + "objc2-core-audio-types", + "objc2-core-foundation", + "objc2-core-media", +] + +[[package]] +name = "objc2-metal" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0125f776a10d00af4152d74616409f0d4a2053a6f57fa5b7d6aa2854ac04794" +dependencies = [ + "bitflags 2.13.1", + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-quartz-core" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96c1358452b371bf9f104e21ec536d37a650eb10f7ee379fff67d2e08d537f1f" +dependencies = [ + "bitflags 2.13.1", + "objc2", + "objc2-core-foundation", + "objc2-foundation", +] + +[[package]] +name = "objc2-ui-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d87d638e33c06f577498cbcc50491496a3ed4246998a7fbba7ccb98b1e7eab22" +dependencies = [ + "bitflags 2.13.1", + "block2", + "objc2", + "objc2-cloud-kit", + "objc2-core-data", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-core-image", + "objc2-core-location", + "objc2-core-text", + "objc2-foundation", + "objc2-quartz-core", + "objc2-user-notifications", +] + +[[package]] +name = "objc2-user-notifications" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9df9128cbbfef73cda168416ccf7f837b62737d748333bfe9ab71c245d76613e" +dependencies = [ + "objc2", + "objc2-foundation", +] + +[[package]] +name = "objc2-web-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2e5aaab980c433cf470df9d7af96a7b46a9d892d521a2cbbb2f8a4c16751e7f" +dependencies = [ + "bitflags 2.13.1", + "block2", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", +] + +[[package]] +name = "once_cell" +version = "1.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "ordered-stream" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50" +dependencies = [ + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "os_pipe" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d8fae84b431384b68627d0f9b3b1245fcf9f46f6c0e3dc902e9dce64edd1967" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "pango" +version = "0.18.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4" +dependencies = [ + "gio", + "glib", + "libc", + "once_cell", + "pango-sys", +] + +[[package]] +name = "pango-sys" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "parking" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" + +[[package]] +name = "parking_lot" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-link 0.2.1", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "pastey" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35fb2e5f958ec131621fdd531e9fc186ed768cbe395337403ae56c17a74c68ec" + +[[package]] +name = "percent-encoding" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" + +[[package]] +name = "petgraph" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" +dependencies = [ + "fixedbitset", + "hashbrown 0.15.5", + "indexmap 2.14.0", +] + +[[package]] +name = "phf" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf" +dependencies = [ + "phf_macros", + "phf_shared", + "serde", +] + +[[package]] +name = "phf_codegen" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49aa7f9d80421bca176ca8dbfebe668cc7a2684708594ec9f3c0db0805d5d6e1" +dependencies = [ + "phf_generator", + "phf_shared", +] + +[[package]] +name = "phf_generator" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" +dependencies = [ + "fastrand", + "phf_shared", +] + +[[package]] +name = "phf_macros" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef" +dependencies = [ + "phf_generator", + "phf_shared", + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "phf_shared" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266" +dependencies = [ + "siphasher", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" + +[[package]] +name = "piper" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c835479a4443ded371d6c535cbfd8d31ad92c5d23ae9770a61bc155e4992a3c1" +dependencies = [ + "atomic-waker", + "fastrand", + "futures-io", +] + +[[package]] +name = "pipewire" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08e645ba5c45109106d56610b3ee60eb13a6f2beb8b74f8dc8186cf261788dda" +dependencies = [ + "anyhow", + "bitflags 2.13.1", + "libc", + "libspa", + "libspa-sys", + "nix", + "once_cell", + "pipewire-sys", + "thiserror 1.0.69", +] + +[[package]] +name = "pipewire-sys" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "849e188f90b1dda88fe2bfe1ad31fe5f158af2c98f80fb5d13726c44f3f01112" +dependencies = [ + "bindgen", + "libspa-sys", + "system-deps", +] + +[[package]] +name = "pkg-config" +version = "0.3.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6b464fbc74e149a392436b17d523f769e057cb6877f6a5c4618bc6f11800548" + +[[package]] +name = "plist" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da1d65da6dd5d1e44199ac0f58712d241c0f439f80adea8924d832384087f85" +dependencies = [ + "base64 0.22.1", + "indexmap 2.14.0", + "quick-xml", + "serde", + "time", +] + +[[package]] +name = "png" +version = "0.17.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526" +dependencies = [ + "bitflags 1.3.2", + "crc32fast", + "fdeflate", + "flate2", + "miniz_oxide", +] + +[[package]] +name = "png" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60769b8b31b2a9f263dae2776c37b1b28ae246943cf719eb6946a1db05128a61" +dependencies = [ + "bitflags 2.13.1", + "crc32fast", + "fdeflate", + "flate2", + "miniz_oxide", +] + +[[package]] +name = "polling" +version = "3.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d0e4f59085d47d8241c88ead0f274e8a0cb551f3625263c05eb8dd897c34218" +dependencies = [ + "cfg-if", + "concurrent-queue", + "hermit-abi", + "pin-project-lite", + "rustix 1.1.4", + "windows-sys 0.61.2", +] + +[[package]] +name = "portable-atomic" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85" + +[[package]] +name = "portable-atomic-util" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a106d1259c23fac8e543272398ae0e3c0b8d33c88ed73d0cc71b0f1d902618" +dependencies = [ + "portable-atomic", +] + +[[package]] +name = "potential_utf" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d83eb9bc6d8e5cf568e7a1101d60ee05e81ed50ea106026f3d18deeb046d7661" +dependencies = [ + "zerovec", +] + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy", +] + +[[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.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +dependencies = [ + "once_cell", + "toml_edit 0.19.15", +] + +[[package]] +name = "proc-macro-crate" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24" +dependencies = [ + "toml_datetime 0.6.3", + "toml_edit 0.20.2", +] + +[[package]] +name = "proc-macro-crate" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" +dependencies = [ + "toml_edit 0.25.13+spec-1.1.0", +] + +[[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 1.0.109", + "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-macro2" +version = "1.0.107" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "profiling" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d595e54a326bc53c1c197b32d295e14b169e3cfeaa8dc82b529f947fba6bcf5" +dependencies = [ + "profiling-procmacros", +] + +[[package]] +name = "profiling-procmacros" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4488a4a36b9a4ba6b9334a32a39971f77c1436ec82c38707bce707699cc3bbcb" +dependencies = [ + "quote", + "syn 2.0.119", +] + +[[package]] +name = "pulp" +version = "0.22.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "046aa45b989642ec2e4717c8e72d677b13edd831a4d3b6cf37d9a3e54912496a" +dependencies = [ + "bytemuck", + "cfg-if", + "libm", + "num-complex", + "paste", + "pulp-wasm-simd-flag", + "raw-cpuid", + "reborrow", + "version_check", +] + +[[package]] +name = "pulp-wasm-simd-flag" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d8f70e07b9c3962945a74e59ca1c511bba65b6419468acc217c457d93f3c740" + +[[package]] +name = "pxfm" +version = "0.1.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d55d956fa96f5ec02be2e13af0e20391a5aa83d6a074e3ad368959d0fab299ea" + +[[package]] +name = "qoi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f6d64c71eb498fe9eae14ce4ec935c555749aef511cca85b5568910d6e48001" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "quick-error" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3" + +[[package]] +name = "quick-xml" +version = "0.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e660451e55124f798a69a5af3f49ccfbefbd41910eefd25caf2393e1f3473ec1" +dependencies = [ + "memchr", +] + +[[package]] +name = "quote" +version = "1.0.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "r-efi" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "r-efi" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + +[[package]] +name = "rand" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9ef1d0d795eb7d84685bca4f72f3649f064e6641543d3a8c415898726a57b41" +dependencies = [ + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" +dependencies = [ + "getrandom 0.3.4", +] + +[[package]] +name = "rav1e" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43b6dd56e85d9483277cde964fd1bdb0428de4fec5ebba7540995639a21cb32b" +dependencies = [ + "aligned-vec", + "arbitrary", + "arg_enum_proc_macro", + "arrayvec", + "av-scenechange", + "av1-grain", + "bitstream-io", + "built", + "cfg-if", + "interpolate_name", + "itertools 0.14.0", + "libc", + "libfuzzer-sys", + "log", + "maybe-rayon", + "new_debug_unreachable", + "noop_proc_macro", + "num-derive", + "num-traits", + "paste", + "profiling", + "rand", + "rand_chacha", + "simd_helpers", + "thiserror 2.0.20", + "v_frame", + "wasm-bindgen", +] + +[[package]] +name = "ravif" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e52310197d971b0f5be7fe6b57530dcd27beb35c1b013f29d66c1ad73fbbcc45" +dependencies = [ + "avif-serialize", + "imgref", + "loop9", + "quick-error", + "rav1e", + "rayon", + "rgb", +] + +[[package]] +name = "raw-cpuid" +version = "11.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "498cd0dc59d73224351ee52a95fee0f1a617a2eae0e7d9d720cc622c73a54186" +dependencies = [ + "bitflags 2.13.1", +] + +[[package]] +name = "raw-window-handle" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" + +[[package]] +name = "rayon" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "reborrow" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03251193000f4bd3b042892be858ee50e8b3719f2b08e5833ac4353724632430" + +[[package]] +name = "redox_syscall" +version = "0.5.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" +dependencies = [ + "bitflags 2.13.1", +] + +[[package]] +name = "redox_users" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +dependencies = [ + "getrandom 0.2.17", + "libredox", + "thiserror 1.0.69", +] + +[[package]] +name = "redox_users" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" +dependencies = [ + "getrandom 0.2.17", + "libredox", + "thiserror 2.0.20", +] + +[[package]] +name = "ref-cast" +version = "1.0.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e440fb4e4b4147295338efb76001ab9e4efc0e5839df2c47fc5ac2381d365c3" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92ecd8964f8453721699a1ed72037b0db49ce2f5a5138486ee89bed6f67cdf3a" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "regex" +version = "1.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f020237b6c8eed93db2e2cb53c00c60a8e1bc73da7d073199a1180401450218d" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad8553b9b26413251cbf30e620595c7a41b3887f03da04579c0e6b0d6a06b4b2" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4" + +[[package]] +name = "reqwest" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "219c5811de6525e5416c7d5d53bb656d3afdbc6c5af816e0802bcfa42dbdc1c3" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-core", + "futures-util", + "http", + "http-body", + "http-body-util", + "hyper", + "hyper-util", + "js-sys", + "log", + "percent-encoding", + "pin-project-lite", + "serde", + "serde_json", + "sync_wrapper", + "tokio", + "tokio-util", + "tower", + "tower-http", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", +] + +[[package]] +name = "rfd" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a15ad77d9e70a92437d8f74c35d99b4e4691128df018833e99f90bcd36152672" +dependencies = [ + "block2", + "dispatch2", + "glib-sys", + "gobject-sys", + "gtk-sys", + "js-sys", + "log", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "raw-window-handle", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows-sys 0.60.2", +] + +[[package]] +name = "rgb" +version = "0.8.53" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47b34b781b31e5d73e9fbc8689c70551fd1ade9a19e3e28cfec8580a79290cc4" + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustc-hash" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b1e7f9a428571be2dc5bc0505c13fb6bf936822b894ec87abf8a08a4e51742d" + +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + +[[package]] +name = "rustix" +version = "0.38.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" +dependencies = [ + "bitflags 2.13.1", + "errno", + "libc", + "linux-raw-sys 0.4.15", + "windows-sys 0.59.0", +] + +[[package]] +name = "rustix" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" +dependencies = [ + "bitflags 2.13.1", + "errno", + "libc", + "linux-raw-sys 0.12.1", + "windows-sys 0.61.2", +] + +[[package]] +name = "rustversion" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf54715a573b99ac80df0bc206da022bcd442c974952c7b9720069370852e21f" + +[[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 = "schemars" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" +dependencies = [ + "dyn-clone", + "indexmap 1.9.3", + "schemars_derive", + "serde", + "serde_json", + "url", + "uuid", +] + +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "687274d293b6cdc6e73e0fee520bf2049650090d7164f87672d212a3c530cf4a" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.119", +] + +[[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.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "selectors" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5d9c0c92a92d33f08817311cf3f2c29a3538a8240e94a6a3c622ce652d7e00c" +dependencies = [ + "bitflags 2.13.1", + "cssparser", + "derive_more", + "log", + "new_debug_unreachable", + "phf", + "phf_codegen", + "precomputed-hash", + "rustc-hash 2.1.3", + "servo_arc", + "smallvec", +] + +[[package]] +name = "semver" +version = "1.0.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" +dependencies = [ + "serde", + "serde_core", +] + +[[package]] +name = "serde" +version = "1.0.229" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4148590afebada386688f18773da617792bf2ef03ffc1e4cbd2b1d45b023e0ba" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde-untagged" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9faf48a4a2d2693be24c6289dbe26552776eb7737074e6722891fadbe6c5058" +dependencies = [ + "erased-serde", + "serde", + "serde_core", + "typeid", +] + +[[package]] +name = "serde_core" +version = "1.0.229" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67dca2c9c51e58a4791a4b1ed58308b39c64224d349a935ab5039aa360942a48" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.229" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "serde_derive_internals" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "serde_json" +version = "1.0.151" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c841b55ecdae098c80dcae9cf767f6f8a0c2cdb3416bbef72181df4d0fe73f14" +dependencies = [ + "itoa", + "memchr", + "serde", + "serde_core", + "zmij", +] + +[[package]] +name = "serde_repr" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d3b1629de253c70a0508c3899572da79ca359fdab27c7920ff00406df418906" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "serde_spanned" +version = "0.6.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_spanned" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" +dependencies = [ + "serde_core", +] + +[[package]] +name = "serde_with" +version = "3.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee78f1fbe43ac4a0e47aadb3dbd357b69eb0d3793e948624cd03dd2750ab1c0a" +dependencies = [ + "base64 0.22.1", + "bs58", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.14.0", + "jiff", + "schemars 0.9.0", + "schemars 1.2.2", + "serde_core", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8705578779c2b6bd90d84d66eb2e206b708b1a4d7b9f17641b293545bf1c7e46" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "serialize-to-javascript" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04f3666a07a197cdb77cdf306c32be9b7f598d7060d50cfd4d5aa04bfd92f6c5" +dependencies = [ + "serde", + "serde_json", + "serialize-to-javascript-impl", +] + +[[package]] +name = "serialize-to-javascript-impl" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "772ee033c0916d670af7860b6e1ef7d658a4629a6d0b4c8c3e67f09b3765b75d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "servo_arc" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "170fb83ab34de17dc69aa7c67482b22218ddb85da56546f9bd6b929e32a05930" +dependencies = [ + "stable_deref_trait", +] + +[[package]] +name = "sha2" +version = "0.10.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "shlex" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba" + +[[package]] +name = "signal-hook-registry" +version = "1.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" +dependencies = [ + "errno", + "libc", +] + +[[package]] +name = "simd-adler32" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a219298ac11a56ea9a6d2120044824d6f01aeb034955e7af7bc16858527deea" + +[[package]] +name = "simd_helpers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95890f873bec569a0362c235787f3aca6e1e887302ba4840839bcc6459c42da6" +dependencies = [ + "quote", +] + +[[package]] +name = "siphasher" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649" + +[[package]] +name = "slab" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" + +[[package]] +name = "smallvec" +version = "1.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ed6a63f02c8539c91a8685a86f4099661ba3da017932f6ebbea6de3f0fa7c90" + +[[package]] +name = "snaplet" +version = "0.1.0" +dependencies = [ + "base64 0.22.1", + "image", + "serde", + "serde_json", + "tauri", + "tauri-build", + "tauri-plugin-autostart", + "tauri-plugin-clipboard-manager", + "tauri-plugin-dialog", + "tauri-plugin-global-shortcut", + "windows", + "xcap", +] + +[[package]] +name = "socket2" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3d1e2c7f27f8d4cb10542a02c49005dbd6e93095799d6f3be745fae9f8fedd4" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "softbuffer" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac18da81ebbf05109ab275b157c22a653bb3c12cf884450179942f81bcbf6c3" +dependencies = [ + "bytemuck", + "js-sys", + "ndk", + "objc2", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation", + "objc2-quartz-core", + "raw-window-handle", + "redox_syscall", + "tracing", + "wasm-bindgen", + "web-sys", + "windows-sys 0.61.2", +] + +[[package]] +name = "soup3" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "471f924a40f31251afc77450e781cb26d55c0b650842efafc9c6cbd2f7cc4f9f" +dependencies = [ + "futures-channel", + "gio", + "glib", + "libc", + "soup3-sys", +] + +[[package]] +name = "soup3-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ebe8950a680a12f24f15ebe1bf70db7af98ad242d9db43596ad3108aab86c27" +dependencies = [ + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" + +[[package]] +name = "string_cache" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a18596f8c785a729f2819c0f6a7eae6ebeebdfffbfe4214ae6b087f690e31901" +dependencies = [ + "new_debug_unreachable", + "parking_lot", + "phf_shared", + "precomputed-hash", +] + +[[package]] +name = "string_cache_codegen" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "585635e46db231059f76c5849798146164652513eb9e8ab2685939dd90f29b69" +dependencies = [ + "phf_generator", + "phf_shared", + "proc-macro2", + "quote", +] + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "swift-rs" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e45c444e496845d3f2a351146bff59aae4975b2280238df1dfaa0c7d1846f38e" +dependencies = [ + "base64 0.21.7", + "serde", + "serde_json", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.119" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6275cddf4610d1775e6d1fe9469b2e77d0f39fd98fb7450901b821e0c53649f" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sync_wrapper" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" +dependencies = [ + "futures-core", +] + +[[package]] +name = "synstructure" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "system-deps" +version = "6.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" +dependencies = [ + "cfg-expr", + "heck 0.5.0", + "pkg-config", + "toml 0.8.2", + "version-compare", +] + +[[package]] +name = "tao" +version = "0.35.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1c93047acf68669466a34690ac58cca7010bd1b201e1ec86f1fd0a75d3dd4a9" +dependencies = [ + "bitflags 2.13.1", + "block2", + "core-foundation", + "core-graphics", + "crossbeam-channel", + "dbus", + "dispatch2", + "dlopen2", + "dpi", + "gdkwayland-sys", + "gdkx11-sys", + "gtk", + "jni", + "libc", + "log", + "ndk", + "ndk-sys", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "objc2-ui-kit", + "once_cell", + "parking_lot", + "percent-encoding", + "raw-window-handle", + "tao-macros", + "unicode-segmentation", + "url", + "windows", + "windows-core 0.61.2", + "windows-version", + "x11-dl", +] + +[[package]] +name = "tao-macros" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f7eeb6d99155545da6150a1795945f16ac9c178deb2a5f2e74d776107bd5849" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "target-lexicon" +version = "0.12.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" + +[[package]] +name = "tauri" +version = "2.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "667b20e2726d572dea2de7370da16e188eb06008faf9a92fab7cdc46791190b5" +dependencies = [ + "anyhow", + "bytes", + "cookie", + "dirs 6.0.0", + "dunce", + "embed_plist", + "getrandom 0.3.4", + "glob", + "gtk", + "heck 0.5.0", + "http", + "image", + "jni", + "libc", + "log", + "mime", + "muda", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "objc2-ui-kit", + "objc2-web-kit", + "percent-encoding", + "plist", + "raw-window-handle", + "reqwest", + "serde", + "serde_json", + "serde_repr", + "serialize-to-javascript", + "swift-rs", + "tauri-build", + "tauri-macros", + "tauri-runtime", + "tauri-runtime-wry", + "tauri-utils", + "thiserror 2.0.20", + "tokio", + "tray-icon", + "url", + "webkit2gtk", + "webview2-com", + "window-vibrancy", + "windows", +] + +[[package]] +name = "tauri-build" +version = "2.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9ce40b16101cb6ea63d3e221567affd1c3a9205f95d7bc574941a10636b632" +dependencies = [ + "anyhow", + "cargo_toml", + "dirs 6.0.0", + "glob", + "heck 0.5.0", + "json-patch", + "schemars 0.8.22", + "semver", + "serde", + "serde_json", + "tauri-utils", + "tauri-winres", + "walkdir", +] + +[[package]] +name = "tauri-codegen" +version = "2.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08279169ff42f8fc45a1dbc9dcae888893ba95288142e5880c59b93a26d2cfc5" +dependencies = [ + "base64 0.22.1", + "brotli", + "ico", + "json-patch", + "plist", + "png 0.17.16", + "proc-macro2", + "quote", + "semver", + "serde", + "serde_json", + "sha2", + "syn 2.0.119", + "tauri-utils", + "thiserror 2.0.20", + "time", + "url", + "uuid", + "walkdir", +] + +[[package]] +name = "tauri-macros" +version = "2.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8b394794f399a421811d06966343e7933fcae92d59f5180b9388d1174497a45" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.119", + "tauri-codegen", + "tauri-utils", +] + +[[package]] +name = "tauri-plugin" +version = "2.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74be5dd4bed9afbd145e5716b5fa2ec28cbc29c34ffa61c258c9273d896c8020" +dependencies = [ + "anyhow", + "glob", + "plist", + "schemars 0.8.22", + "serde", + "serde_json", + "tauri-utils", + "walkdir", +] + +[[package]] +name = "tauri-plugin-autostart" +version = "2.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "459383cebc193cdd03d1ba4acc40f2c408a7abce419d64bdcd2d745bc2886f70" +dependencies = [ + "auto-launch", + "serde", + "serde_json", + "tauri", + "tauri-plugin", + "thiserror 2.0.20", +] + +[[package]] +name = "tauri-plugin-clipboard-manager" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "206dc20af4ed210748ba945c2774e60fd0acd52b9a73a028402caf809e9b6ecf" +dependencies = [ + "arboard", + "log", + "serde", + "serde_json", + "tauri", + "tauri-plugin", + "thiserror 2.0.20", +] + +[[package]] +name = "tauri-plugin-dialog" +version = "2.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2d3c1dbe38037e7f590cdf2492594d5ceebe031e7bc7e827509b22a999d2940" +dependencies = [ + "log", + "raw-window-handle", + "rfd", + "serde", + "serde_json", + "tauri", + "tauri-plugin", + "tauri-plugin-fs", + "thiserror 2.0.20", + "url", +] + +[[package]] +name = "tauri-plugin-fs" +version = "2.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7ecc274121aca0c036a2b42d1cbe83d368d348f54e0bb8a735c2b1548e8f371" +dependencies = [ + "anyhow", + "dunce", + "glob", + "log", + "objc2-foundation", + "percent-encoding", + "schemars 0.8.22", + "serde", + "serde_json", + "serde_repr", + "tauri", + "tauri-plugin", + "tauri-utils", + "thiserror 2.0.20", + "toml 1.1.4+spec-1.1.0", + "url", +] + +[[package]] +name = "tauri-plugin-global-shortcut" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4dd9f4c5136c09cd962da0c86dc4accd4666db2ea591cf16e6597435843bd2b" +dependencies = [ + "global-hotkey", + "log", + "serde", + "serde_json", + "tauri", + "tauri-plugin", + "thiserror 2.0.20", +] + +[[package]] +name = "tauri-runtime" +version = "2.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0b4bc95aed361b0019067d189a1174a603d460d0f6c72606512d59fc9c12ec8" +dependencies = [ + "cookie", + "dpi", + "gtk", + "http", + "jni", + "objc2", + "objc2-ui-kit", + "objc2-web-kit", + "raw-window-handle", + "serde", + "serde_json", + "tauri-utils", + "thiserror 2.0.20", + "url", + "webkit2gtk", + "webview2-com", + "windows", +] + +[[package]] +name = "tauri-runtime-wry" +version = "2.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e6fac707727b7a2f48e4ded90976324267371073edbb415ffb73bb0458d203f" +dependencies = [ + "gtk", + "http", + "jni", + "log", + "objc2", + "objc2-app-kit", + "once_cell", + "percent-encoding", + "raw-window-handle", + "softbuffer", + "tao", + "tauri-runtime", + "tauri-utils", + "url", + "webkit2gtk", + "webview2-com", + "windows", + "wry", +] + +[[package]] +name = "tauri-utils" +version = "2.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e176a18e67764923c4f1ce66f25ae4abe5f688384d5eb1a0fa6c77f3d90f887" +dependencies = [ + "anyhow", + "brotli", + "cargo_metadata", + "ctor", + "dom_query", + "dunce", + "glob", + "http", + "infer", + "json-patch", + "log", + "memchr", + "phf", + "plist", + "proc-macro2", + "quote", + "regex", + "schemars 0.8.22", + "semver", + "serde", + "serde-untagged", + "serde_json", + "serde_with", + "swift-rs", + "thiserror 2.0.20", + "toml 1.1.4+spec-1.1.0", + "url", + "urlpattern", + "uuid", + "walkdir", +] + +[[package]] +name = "tauri-winres" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc65d45c68858bfe420dd29e834b5d15dbecf8a07a8a16cf4d532c7b1f69d4b6" +dependencies = [ + "dunce", + "embed-resource", + "toml 1.1.4+spec-1.1.0", +] + +[[package]] +name = "tempfile" +version = "3.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd" +dependencies = [ + "fastrand", + "getrandom 0.4.3", + "once_cell", + "rustix 1.1.4", + "windows-sys 0.61.2", +] + +[[package]] +name = "tendril" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fed54709c5b3a53d09bb1c113ea4f5ceafd1e772ddcb0030a82e1d56c087b08" +dependencies = [ + "new_debug_unreachable", +] + +[[package]] +name = "thiserror" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +dependencies = [ + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f" +dependencies = [ + "thiserror-impl 2.0.20", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "tiff" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b63feaf3343d35b6ca4d50483f94843803b0f51634937cc2ec519fc32232bc52" +dependencies = [ + "fax", + "flate2", + "half", + "quick-error", + "weezl", + "zune-jpeg", +] + +[[package]] +name = "time" +version = "0.3.55" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdb87b95ec50ddfa440816d227a17b2ccbdda963a316a727fda0fc4334f7d134" +dependencies = [ + "deranged", + "num-conv", + "powerfmt", + "serde_core", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1c906769ad99c88eaa54e728060edef082f8e358ff32030cb7c7d315e81109" + +[[package]] +name = "time-macros" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e689342a48d2ea927c87ea50cabf8594854bf940e9310208848d680d668ed85" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tinystr" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1e27c91459209c2986af3dcf603a5a74a4368754ce37414f59acc971167f643" +dependencies = [ + "displaydoc", + "zerovec", +] + +[[package]] +name = "tinyvec" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb4ebadaa0af04fab11ae01eb5f9fdb5f9c5b875506e210e71c07873528baa7f" +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.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "202caea871b69668250d242070849eb495be178ed697a3e98aebce5bc81a0bed" +dependencies = [ + "bytes", + "libc", + "mio", + "pin-project-lite", + "socket2", + "windows-sys 0.61.2", +] + +[[package]] +name = "tokio-util" +version = "0.7.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "494815d09bf52b5548659851081238f0ca39ff638363907596da739561c62c52" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "toml" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d" +dependencies = [ + "serde", + "serde_spanned 0.6.9", + "toml_datetime 0.6.3", + "toml_edit 0.20.2", +] + +[[package]] +name = "toml" +version = "0.9.12+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863" +dependencies = [ + "indexmap 2.14.0", + "serde_core", + "serde_spanned 1.1.1", + "toml_datetime 0.7.5+spec-1.1.0", + "toml_parser", + "toml_writer", + "winnow 0.7.15", +] + +[[package]] +name = "toml" +version = "1.1.4+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3aace63f4bbcdfc2c965b059de67119c89c4017a70d633be6c104910f67056f5" +dependencies = [ + "indexmap 2.14.0", + "serde_core", + "serde_spanned 1.1.1", + "toml_datetime 1.1.1+spec-1.1.0", + "toml_parser", + "toml_writer", + "winnow 1.0.4", +] + +[[package]] +name = "toml_datetime" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_datetime" +version = "0.7.5+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" +dependencies = [ + "serde_core", +] + +[[package]] +name = "toml_datetime" +version = "1.1.1+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" +dependencies = [ + "serde_core", +] + +[[package]] +name = "toml_edit" +version = "0.19.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.14.0", + "toml_datetime 0.6.3", + "winnow 0.5.40", +] + +[[package]] +name = "toml_edit" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" +dependencies = [ + "indexmap 2.14.0", + "serde", + "serde_spanned 0.6.9", + "toml_datetime 0.6.3", + "winnow 0.5.40", +] + +[[package]] +name = "toml_edit" +version = "0.25.13+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6975367e4d2ef766d86af01ffad14b622fecc8d4357a998fbc4deb6e9bacaf9b" +dependencies = [ + "indexmap 2.14.0", + "toml_datetime 1.1.1+spec-1.1.0", + "toml_parser", + "winnow 1.0.4", +] + +[[package]] +name = "toml_parser" +version = "1.1.3+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d38ac1cf9b95face32296c0a3ede1fdc270627c9d9c02a7274dd6d960dc4d56" +dependencies = [ + "winnow 1.0.4", +] + +[[package]] +name = "toml_writer" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d56353a2a665ad0f41a421187180aab746c8c325620617ad883a99a1cbe66d2" + +[[package]] +name = "tower" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", + "sync_wrapper", + "tokio", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-http" +version = "0.6.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cfcf7e2740e6fc6d4d688b4ef00650406bb94adf4731e43c096c3a19fe40840" +dependencies = [ + "bitflags 2.13.1", + "bytes", + "futures-util", + "http", + "http-body", + "pin-project-lite", + "tower", + "tower-layer", + "tower-service", + "url", +] + +[[package]] +name = "tower-layer" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" + +[[package]] +name = "tower-service" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" + +[[package]] +name = "tracing" +version = "0.1.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" +dependencies = [ + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "tracing-core" +version = "0.1.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" +dependencies = [ + "once_cell", +] + +[[package]] +name = "tray-icon" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "045979e3f037cd18ad1cb2a419dfda133c5c29c9f3453370079f2255d46c257e" +dependencies = [ + "crossbeam-channel", + "dirs 6.0.0", + "libappindicator", + "muda", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation", + "once_cell", + "png 0.18.1", + "serde", + "thiserror 2.0.20", + "windows-sys 0.61.2", +] + +[[package]] +name = "tree_magic_mini" +version = "3.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8765b90061cba6c22b5831f675da109ae5561588290f9fa2317adab2714d5a6" +dependencies = [ + "memchr", + "nom 8.0.0", + "petgraph", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" + +[[package]] +name = "typeid" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" + +[[package]] +name = "typenum" +version = "1.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6f5e870be6c3b371b77fe0ee0bafb859fa4964b4404c27de1d380043c4dda20" + +[[package]] +name = "uds_windows" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f6fb2847f6742cd76af783a2a2c49e9375d0a111c7bef6f71cd9e738c72d6e" +dependencies = [ + "memoffset", + "tempfile", + "windows-sys 0.61.2", +] + +[[package]] +name = "unic-char-property" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221" +dependencies = [ + "unic-char-range", +] + +[[package]] +name = "unic-char-range" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc" + +[[package]] +name = "unic-common" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc" + +[[package]] +name = "unic-ucd-ident" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e230a37c0381caa9219d67cf063aa3a375ffed5bf541a452db16e744bdab6987" +dependencies = [ + "unic-char-property", + "unic-char-range", + "unic-ucd-version", +] + +[[package]] +name = "unic-ucd-version" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4" +dependencies = [ + "unic-common", +] + +[[package]] +name = "unicode-ident" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" + +[[package]] +name = "unicode-segmentation" +version = "1.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8" + +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + +[[package]] +name = "url" +version = "2.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", + "serde", + "serde_derive", +] + +[[package]] +name = "urlpattern" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70acd30e3aa1450bc2eece896ce2ad0d178e9c079493819301573dae3c37ba6d" +dependencies = [ + "regex", + "serde", + "unic-ucd-ident", + "url", +] + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + +[[package]] +name = "uuid" +version = "1.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f053576934f05a761a402421fbbe3d425d9366f75f978806a037b3ca481abecc" +dependencies = [ + "getrandom 0.4.3", + "js-sys", + "serde_core", + "wasm-bindgen", +] + +[[package]] +name = "v_frame" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "666b7727c8875d6ab5db9533418d7c764233ac9c0cff1d469aec8fa127597be2" +dependencies = [ + "aligned-vec", + "num-traits", + "wasm-bindgen", +] + +[[package]] +name = "version-compare" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03c2856837ef78f57382f06b2b8563a2f512f7185d732608fd9176cb3b8edf0e" + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "vswhom" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b" +dependencies = [ + "libc", + "vswhom-sys", +] + +[[package]] +name = "vswhom-sys" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb067e4cbd1ff067d1df46c9194b5de0e98efd2810bbc95c5d5e5f25a3231150" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" + +[[package]] +name = "wasip2" +version = "1.0.4+wasi-0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67efb37e106e55ce722a510d6b5f9c17f083e5fc79afc2badeb12cc313d9487" +dependencies = [ + "wit-bindgen", +] + +[[package]] +name = "wasm-bindgen" +version = "0.2.127" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b70935747edd64d89de3efa29d73789b806c15798f8e7dca4d8ac356b50ce70" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.77" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b7777d5cc23d0e91404e53ce2d5e8ec7acae3026b16233dba62cd3246457950" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.127" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77775f8f3f7217702089053b94958f8f54061a3f663417df76e19cbdcca29bc1" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.127" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e11d33f857dc2fb11b8bc75aee111aa9cbeb12cd9f25efd3d4c2a3dd4e235284" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn 2.0.119", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.127" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ef64dbcc55df09c7e5a46182d181c2cfa3e925f3da937ea764728b4bbb9dcbf" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "wasm-streams" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d1ec4f6517c9e11ae630e200b2b65d193279042e28edd4a2cda233e46670bbb" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wayland-backend" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38a91b4eaddff87b1cd1074985e3713da4af2c49742d1b356b2c01670a67a078" +dependencies = [ + "cc", + "downcast-rs", + "rustix 1.1.4", + "scoped-tls", + "smallvec", + "wayland-sys", +] + +[[package]] +name = "wayland-client" +version = "0.31.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3c36a0f861ad76d0901f2800b46321410d9f73f2ea88aac0650d86c32688073" +dependencies = [ + "bitflags 2.13.1", + "rustix 1.1.4", + "wayland-backend", + "wayland-scanner", +] + +[[package]] +name = "wayland-protocols" +version = "0.32.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23d0c813de3daa2ed6520af85a3bd49b0e722a3078506899aa9686fea58dc4b6" +dependencies = [ + "bitflags 2.13.1", + "wayland-backend", + "wayland-client", + "wayland-scanner", +] + +[[package]] +name = "wayland-protocols-wlr" +version = "0.3.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb04e52f7836d7c7976c78ca0250d61e33873c34156a2a1fc9474828ec268234" +dependencies = [ + "bitflags 2.13.1", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-scanner", +] + +[[package]] +name = "wayland-scanner" +version = "0.31.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "338e30461b3a2b67d70eb30a6d89f8e0c93a833e07d2ae89085cd070c4a00ac0" +dependencies = [ + "proc-macro2", + "quick-xml", + "quote", +] + +[[package]] +name = "wayland-server" +version = "0.31.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dde9c29be0f723a573977de51ee455bf3dfa03652730a74f9dd3b337e374d75" +dependencies = [ + "bitflags 2.13.1", + "downcast-rs", + "rustix 1.1.4", + "wayland-backend", + "wayland-scanner", +] + +[[package]] +name = "wayland-sys" +version = "0.31.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8eab23fefc9e41f8e841df4a9c707e8a8c4ed26e944ef69297184de2785e3be" +dependencies = [ + "dlib", + "libc", + "log", + "memoffset", + "pkg-config", +] + +[[package]] +name = "web-sys" +version = "0.3.104" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c435338968042f4f59a557f690a253676d47ce13ceb55d70100e7facf6620a30" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "web_atoms" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba8b815c1b593dc0baf78dd0f4fc8fdb2de53198fb1163738093e9a311c33fb3" +dependencies = [ + "phf", + "phf_codegen", + "string_cache", + "string_cache_codegen", +] + +[[package]] +name = "webkit2gtk" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1027150013530fb2eaf806408df88461ae4815a45c541c8975e61d6f2fc4793" +dependencies = [ + "bitflags 1.3.2", + "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 = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "916a5f65c2ef0dfe12fff695960a2ec3d4565359fdbb2e9943c974e06c734ea5" +dependencies = [ + "bitflags 1.3.2", + "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.38.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7130243a7a5b33c54a444e54842e6a9e133de08b5ad7b5861cd8ed9a6a5bc96a" +dependencies = [ + "webview2-com-macros", + "webview2-com-sys", + "windows", + "windows-core 0.61.2", + "windows-implement", + "windows-interface", +] + +[[package]] +name = "webview2-com-macros" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a921c1b6914c367b2b823cd4cde6f96beec77d30a939c8199bb377cf9b9b54" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "webview2-com-sys" +version = "0.38.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "381336cfffd772377d291702245447a5251a2ffa5bad679c99e61bc48bacbf9c" +dependencies = [ + "thiserror 2.0.20", + "windows", + "windows-core 0.61.2", +] + +[[package]] +name = "weezl" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a28ac98ddc8b9274cb41bb4d9d4d5c425b6020c50c46f25559911905610b4a88" + +[[package]] +name = "widestring" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72069c3113ab32ab29e5584db3c6ec55d416895e60715417b5b883a357c3e471" + +[[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.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +dependencies = [ + "windows-sys 0.61.2", +] + +[[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 = "window-vibrancy" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9bec5a31f3f9362f2258fd0e9c9dd61a9ca432e7306cc78c444258f0dce9a9c" +dependencies = [ + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "raw-window-handle", + "windows-sys 0.59.0", + "windows-version", +] + +[[package]] +name = "windows" +version = "0.61.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" +dependencies = [ + "windows-collections", + "windows-core 0.61.2", + "windows-future", + "windows-link 0.1.3", + "windows-numerics", +] + +[[package]] +name = "windows-collections" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" +dependencies = [ + "windows-core 0.61.2", +] + +[[package]] +name = "windows-core" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link 0.1.3", + "windows-result 0.3.4", + "windows-strings 0.4.2", +] + +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link 0.2.1", + "windows-result 0.4.1", + "windows-strings 0.5.1", +] + +[[package]] +name = "windows-future" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", + "windows-threading", +] + +[[package]] +name = "windows-implement" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "windows-interface" +version = "0.59.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "windows-link" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-numerics" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", +] + +[[package]] +name = "windows-result" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link 0.1.3", +] + +[[package]] +name = "windows-result" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows-strings" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" +dependencies = [ + "windows-link 0.1.3", +] + +[[package]] +name = "windows-strings" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.5", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.53.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" +dependencies = [ + "windows-link 0.2.1", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", +] + +[[package]] +name = "windows-threading" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" +dependencies = [ + "windows-link 0.1.3", +] + +[[package]] +name = "windows-version" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4060a1da109b9d0326b7262c8e12c84df67cc0dbc9e33cf49e01ccc2eb63631" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_i686_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" + +[[package]] +name = "winnow" +version = "0.5.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] + +[[package]] +name = "winnow" +version = "0.7.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" + +[[package]] +name = "winnow" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b97319f7b8343df12cc98938e5c3eb436064524c8d2b4e30a1d3a36eecdf81" +dependencies = [ + "memchr", +] + +[[package]] +name = "winreg" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" +dependencies = [ + "winapi", +] + +[[package]] +name = "winreg" +version = "0.55.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb5a765337c50e9ec252c2069be9bf91c7df47afb103b642ba3a53bf8101be97" +dependencies = [ + "cfg-if", + "windows-sys 0.59.0", +] + +[[package]] +name = "wit-bindgen" +version = "0.57.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ebf944e87a7c253233ad6766e082e3cd714b5d03812acc24c318f549614536e" + +[[package]] +name = "wl-clipboard-rs" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9651471a32e87d96ef3a127715382b2d11cc7c8bb9822ded8a7cc94072eb0a3" +dependencies = [ + "libc", + "log", + "os_pipe", + "rustix 1.1.4", + "thiserror 2.0.20", + "tree_magic_mini", + "wayland-backend", + "wayland-client", + "wayland-protocols", + "wayland-protocols-wlr", +] + +[[package]] +name = "writeable" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc" + +[[package]] +name = "wry" +version = "0.55.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "186f9871daa55fd9c016578b810d149de58367113db7fb72b462d2323ce19514" +dependencies = [ + "base64 0.22.1", + "block2", + "cookie", + "crossbeam-channel", + "dirs 6.0.0", + "dom_query", + "dpi", + "dunce", + "gdkx11", + "gtk", + "http", + "javascriptcore-rs", + "jni", + "libc", + "ndk", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "objc2-ui-kit", + "objc2-web-kit", + "once_cell", + "percent-encoding", + "raw-window-handle", + "sha2", + "soup3", + "tao-macros", + "thiserror 2.0.20", + "url", + "webkit2gtk", + "webkit2gtk-sys", + "webview2-com", + "windows", + "windows-core 0.61.2", + "windows-version", + "x11-dl", +] + +[[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 = "x11rb" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9993aa5be5a26815fe2c3eacfc1fde061fc1a1f094bf1ad2a18bf9c495dd7414" +dependencies = [ + "gethostname", + "rustix 1.1.4", + "x11rb-protocol", +] + +[[package]] +name = "x11rb-protocol" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea6fc2961e4ef194dcbfe56bb845534d0dc8098940c7e5c012a258bfec6701bd" + +[[package]] +name = "xcap" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "604b4ac2b821a6c37510b9a065a1d52cf364375211a3d9a1557105ad8522cac6" +dependencies = [ + "dispatch2", + "image", + "lazy_static", + "libwayshot-xcap", + "log", + "objc2", + "objc2-app-kit", + "objc2-av-foundation", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-core-media", + "objc2-core-video", + "objc2-foundation", + "percent-encoding", + "pipewire", + "rand", + "scopeguard", + "serde", + "thiserror 2.0.20", + "url", + "widestring", + "windows", + "xcb", + "zbus", +] + +[[package]] +name = "xcb" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6c2ad15e0e922856ee89afe862b8992334bbe7953adad56cd1199358cb30566" +dependencies = [ + "bitflags 2.13.1", + "libc", + "quick-xml", +] + +[[package]] +name = "xkeysym" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56" + +[[package]] +name = "xml-rs" +version = "0.8.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e450f9b2ed1dff33c94c12589a87338689467b9c4f5d8a5710bd09a847d2c8a7" + +[[package]] +name = "y4m" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5a4b21e1a62b67a2970e6831bc091d7b87e119e7f9791aef9702e3bef04448" + +[[package]] +name = "yansi-term" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe5c30ade05e61656247b2e334a031dfd0cc466fadef865bdcdea8d537951bf1" +dependencies = [ + "winapi", +] + +[[package]] +name = "yoke" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5" +dependencies = [ + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", + "synstructure", +] + +[[package]] +name = "zbus" +version = "5.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5db4be7c075cb421e4b7ee645541604239bd243ba7c357511f4ff3a74b555907" +dependencies = [ + "async-broadcast", + "async-executor", + "async-io", + "async-lock", + "async-process", + "async-recursion", + "async-task", + "async-trait", + "blocking", + "enumflags2", + "event-listener", + "futures-core", + "futures-lite", + "hex", + "libc", + "ordered-stream", + "rustix 1.1.4", + "serde", + "serde_repr", + "tracing", + "uds_windows", + "uuid", + "windows-sys 0.61.2", + "winnow 1.0.4", + "zbus_macros", + "zbus_names", + "zvariant", +] + +[[package]] +name = "zbus_macros" +version = "5.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2990635d09ade6df1868f72f8cac69a876a90981e8bd3c40b1be413f8dc88f40" +dependencies = [ + "proc-macro-crate 3.5.0", + "proc-macro2", + "quote", + "syn 3.0.4", + "zbus_names", + "zvariant", + "zvariant_utils", +] + +[[package]] +name = "zbus_names" +version = "4.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8bf88b4a3ff53e883001e0e0115b297a9d53c31b9c1edd2bfdd853e3428624e" +dependencies = [ + "serde", + "winnow 1.0.4", + "zvariant", +] + +[[package]] +name = "zcheapstr" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1afec51604565183aeb5c54c20aeab286120d4e4460f7f76e3e8bb8c0d99473" +dependencies = [ + "serde", +] + +[[package]] +name = "zerocopy" +version = "0.8.56" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "556764e583adb45a9f8d413c2a147fa7e8d821e48e12b14fd560b607998b75eb" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.56" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2ab42fc20575779bd240faa45f94a74256f755c0fa9e89f0ede20d91d0cdfc1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", +] + +[[package]] +name = "zerofrom" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.119", + "synstructure", +] + +[[package]] +name = "zerotrie" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ea269c3bd32f0a32c321907a2ae912ba6f4649bb0fc764a15627e99a7095a3f" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", +] + +[[package]] +name = "zerovec" +version = "0.11.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb0464e17806c1d976d5cba29399c7f08e516e279e2ba493f63123b5fca67dd8" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.4", +] + +[[package]] +name = "zmij" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29666d0abbfad1e3dc4dcf6144730dd3a3ab225bbbdac83319345b1b44ccfc1b" + +[[package]] +name = "zune-core" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d56377fd46368984a170bc5aac5567e52ca5da874caa60bea39fcbca78fb658b" + +[[package]] +name = "zune-inflate" +version = "0.2.54" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73ab332fe2f6680068f3582b16a24f90ad7096d5d39b974d1c0aff0125116f02" +dependencies = [ + "simd-adler32", +] + +[[package]] +name = "zune-jpeg" +version = "0.5.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27bc9d5b815bc103f142aa054f561d9187d191692ec7c2d1e2b4737f8dbd7296" +dependencies = [ + "zune-core", +] + +[[package]] +name = "zvariant" +version = "5.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1d34c27cc6cdd1f458427519dd6b8612f7b7e3f7b9a0b2355d041dda9869147" +dependencies = [ + "endi", + "enumflags2", + "serde", + "winnow 1.0.4", + "zcheapstr", + "zvariant_derive", + "zvariant_utils", +] + +[[package]] +name = "zvariant_derive" +version = "5.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "864155e69b4352db0c7f374917bf45d1e0c8d17659c8b3dbf9795f3673f8c497" +dependencies = [ + "proc-macro-crate 3.5.0", + "proc-macro2", + "quote", + "syn 3.0.4", + "zvariant_utils", +] + +[[package]] +name = "zvariant_utils" +version = "4.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bad0294361a320b694a328460dc73add56c306150f5cb6bfafc44446120008a3" +dependencies = [ + "proc-macro2", + "quote", + "serde", + "syn 3.0.4", + "winnow 1.0.4", +] diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml new file mode 100644 index 0000000..288cbcc --- /dev/null +++ b/src-tauri/Cargo.toml @@ -0,0 +1,28 @@ +[package] +name = "snaplet" +version = "0.1.0" +description = "A lightweight cross-platform screenshot tool" +authors = ["Snaplet"] +edition = "2021" + +[lib] +name = "snaplet_lib" +crate-type = ["staticlib", "cdylib", "rlib"] + +[build-dependencies] +tauri-build = { version = "2", features = [] } + +[dependencies] +tauri = { version = "2", features = ["tray-icon", "image-png"] } +tauri-plugin-autostart = "2" +tauri-plugin-clipboard-manager = "2" +tauri-plugin-dialog = "2" +tauri-plugin-global-shortcut = "2" +serde = { version = "1", features = ["derive"] } +serde_json = "1" +base64 = "0.22" +image = "0.25" +xcap = "0.7" + +[target.'cfg(windows)'.dependencies] +windows = { version = "0.61", features = ["Win32_UI_WindowsAndMessaging"] } diff --git a/src-tauri/build.rs b/src-tauri/build.rs new file mode 100644 index 0000000..d860e1e --- /dev/null +++ b/src-tauri/build.rs @@ -0,0 +1,3 @@ +fn main() { + tauri_build::build() +} diff --git a/src-tauri/capabilities/default.json b/src-tauri/capabilities/default.json new file mode 100644 index 0000000..0cd4c9c --- /dev/null +++ b/src-tauri/capabilities/default.json @@ -0,0 +1,18 @@ +{ + "$schema": "../gen/schemas/desktop-schema.json", + "identifier": "default", + "description": "Snaplet desktop permissions", + "windows": ["main", "capture"], + "permissions": [ + "core:default", + "core:window:allow-close", + "core:window:allow-hide", + "core:window:allow-show", + "autostart:default", + "clipboard-manager:allow-write-image", + "dialog:allow-save", + "global-shortcut:allow-register", + "global-shortcut:allow-unregister", + "global-shortcut:allow-is-registered" + ] +} diff --git a/src-tauri/gen/schemas/acl-manifests.json b/src-tauri/gen/schemas/acl-manifests.json new file mode 100644 index 0000000..c0db275 --- /dev/null +++ b/src-tauri/gen/schemas/acl-manifests.json @@ -0,0 +1 @@ +{"autostart":{"default_permission":{"identifier":"default","description":"This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n","permissions":["allow-enable","allow-disable","allow-is-enabled"]},"permissions":{"allow-disable":{"identifier":"allow-disable","description":"Enables the disable command without any pre-configured scope.","commands":{"allow":["disable"],"deny":[]}},"allow-enable":{"identifier":"allow-enable","description":"Enables the enable command without any pre-configured scope.","commands":{"allow":["enable"],"deny":[]}},"allow-is-enabled":{"identifier":"allow-is-enabled","description":"Enables the is_enabled command without any pre-configured scope.","commands":{"allow":["is_enabled"],"deny":[]}},"deny-disable":{"identifier":"deny-disable","description":"Denies the disable command without any pre-configured scope.","commands":{"allow":[],"deny":["disable"]}},"deny-enable":{"identifier":"deny-enable","description":"Denies the enable command without any pre-configured scope.","commands":{"allow":[],"deny":["enable"]}},"deny-is-enabled":{"identifier":"deny-is-enabled","description":"Denies the is_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["is_enabled"]}}},"permission_sets":{},"global_scope_schema":null},"clipboard-manager":{"default_permission":{"identifier":"default","description":"No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n","permissions":[]},"permissions":{"allow-clear":{"identifier":"allow-clear","description":"Enables the clear command without any pre-configured scope.","commands":{"allow":["clear"],"deny":[]}},"allow-read-image":{"identifier":"allow-read-image","description":"Enables the read_image command without any pre-configured scope.","commands":{"allow":["read_image"],"deny":[]}},"allow-read-text":{"identifier":"allow-read-text","description":"Enables the read_text command without any pre-configured scope.","commands":{"allow":["read_text"],"deny":[]}},"allow-write-html":{"identifier":"allow-write-html","description":"Enables the write_html command without any pre-configured scope.","commands":{"allow":["write_html"],"deny":[]}},"allow-write-image":{"identifier":"allow-write-image","description":"Enables the write_image command without any pre-configured scope.","commands":{"allow":["write_image"],"deny":[]}},"allow-write-text":{"identifier":"allow-write-text","description":"Enables the write_text command without any pre-configured scope.","commands":{"allow":["write_text"],"deny":[]}},"deny-clear":{"identifier":"deny-clear","description":"Denies the clear command without any pre-configured scope.","commands":{"allow":[],"deny":["clear"]}},"deny-read-image":{"identifier":"deny-read-image","description":"Denies the read_image command without any pre-configured scope.","commands":{"allow":[],"deny":["read_image"]}},"deny-read-text":{"identifier":"deny-read-text","description":"Denies the read_text command without any pre-configured scope.","commands":{"allow":[],"deny":["read_text"]}},"deny-write-html":{"identifier":"deny-write-html","description":"Denies the write_html command without any pre-configured scope.","commands":{"allow":[],"deny":["write_html"]}},"deny-write-image":{"identifier":"deny-write-image","description":"Denies the write_image command without any pre-configured scope.","commands":{"allow":[],"deny":["write_image"]}},"deny-write-text":{"identifier":"deny-write-text","description":"Denies the write_text command without any pre-configured scope.","commands":{"allow":[],"deny":["write_text"]}}},"permission_sets":{},"global_scope_schema":null},"core":{"default_permission":{"identifier":"default","description":"Default core plugins set.","permissions":["core:path:default","core:event:default","core:window:default","core:webview:default","core:app:default","core:image:default","core:resources:default","core:menu:default","core:tray:default"]},"permissions":{},"permission_sets":{},"global_scope_schema":null},"core:app":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin.","permissions":["allow-version","allow-name","allow-tauri-version","allow-identifier","allow-bundle-type","allow-register-listener","allow-remove-listener","allow-supports-multiple-windows"]},"permissions":{"allow-app-hide":{"identifier":"allow-app-hide","description":"Enables the app_hide command without any pre-configured scope.","commands":{"allow":["app_hide"],"deny":[]}},"allow-app-show":{"identifier":"allow-app-show","description":"Enables the app_show command without any pre-configured scope.","commands":{"allow":["app_show"],"deny":[]}},"allow-bundle-type":{"identifier":"allow-bundle-type","description":"Enables the bundle_type command without any pre-configured scope.","commands":{"allow":["bundle_type"],"deny":[]}},"allow-default-window-icon":{"identifier":"allow-default-window-icon","description":"Enables the default_window_icon command without any pre-configured scope.","commands":{"allow":["default_window_icon"],"deny":[]}},"allow-fetch-data-store-identifiers":{"identifier":"allow-fetch-data-store-identifiers","description":"Enables the fetch_data_store_identifiers command without any pre-configured scope.","commands":{"allow":["fetch_data_store_identifiers"],"deny":[]}},"allow-identifier":{"identifier":"allow-identifier","description":"Enables the identifier command without any pre-configured scope.","commands":{"allow":["identifier"],"deny":[]}},"allow-name":{"identifier":"allow-name","description":"Enables the name command without any pre-configured scope.","commands":{"allow":["name"],"deny":[]}},"allow-register-listener":{"identifier":"allow-register-listener","description":"Enables the register_listener command without any pre-configured scope.","commands":{"allow":["register_listener"],"deny":[]}},"allow-remove-data-store":{"identifier":"allow-remove-data-store","description":"Enables the remove_data_store command without any pre-configured scope.","commands":{"allow":["remove_data_store"],"deny":[]}},"allow-remove-listener":{"identifier":"allow-remove-listener","description":"Enables the remove_listener command without any pre-configured scope.","commands":{"allow":["remove_listener"],"deny":[]}},"allow-set-app-theme":{"identifier":"allow-set-app-theme","description":"Enables the set_app_theme command without any pre-configured scope.","commands":{"allow":["set_app_theme"],"deny":[]}},"allow-set-dock-visibility":{"identifier":"allow-set-dock-visibility","description":"Enables the set_dock_visibility command without any pre-configured scope.","commands":{"allow":["set_dock_visibility"],"deny":[]}},"allow-supports-multiple-windows":{"identifier":"allow-supports-multiple-windows","description":"Enables the supports_multiple_windows command without any pre-configured scope.","commands":{"allow":["supports_multiple_windows"],"deny":[]}},"allow-tauri-version":{"identifier":"allow-tauri-version","description":"Enables the tauri_version command without any pre-configured scope.","commands":{"allow":["tauri_version"],"deny":[]}},"allow-version":{"identifier":"allow-version","description":"Enables the version command without any pre-configured scope.","commands":{"allow":["version"],"deny":[]}},"deny-app-hide":{"identifier":"deny-app-hide","description":"Denies the app_hide command without any pre-configured scope.","commands":{"allow":[],"deny":["app_hide"]}},"deny-app-show":{"identifier":"deny-app-show","description":"Denies the app_show command without any pre-configured scope.","commands":{"allow":[],"deny":["app_show"]}},"deny-bundle-type":{"identifier":"deny-bundle-type","description":"Denies the bundle_type command without any pre-configured scope.","commands":{"allow":[],"deny":["bundle_type"]}},"deny-default-window-icon":{"identifier":"deny-default-window-icon","description":"Denies the default_window_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["default_window_icon"]}},"deny-fetch-data-store-identifiers":{"identifier":"deny-fetch-data-store-identifiers","description":"Denies the fetch_data_store_identifiers command without any pre-configured scope.","commands":{"allow":[],"deny":["fetch_data_store_identifiers"]}},"deny-identifier":{"identifier":"deny-identifier","description":"Denies the identifier command without any pre-configured scope.","commands":{"allow":[],"deny":["identifier"]}},"deny-name":{"identifier":"deny-name","description":"Denies the name command without any pre-configured scope.","commands":{"allow":[],"deny":["name"]}},"deny-register-listener":{"identifier":"deny-register-listener","description":"Denies the register_listener command without any pre-configured scope.","commands":{"allow":[],"deny":["register_listener"]}},"deny-remove-data-store":{"identifier":"deny-remove-data-store","description":"Denies the remove_data_store command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_data_store"]}},"deny-remove-listener":{"identifier":"deny-remove-listener","description":"Denies the remove_listener command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_listener"]}},"deny-set-app-theme":{"identifier":"deny-set-app-theme","description":"Denies the set_app_theme command without any pre-configured scope.","commands":{"allow":[],"deny":["set_app_theme"]}},"deny-set-dock-visibility":{"identifier":"deny-set-dock-visibility","description":"Denies the set_dock_visibility command without any pre-configured scope.","commands":{"allow":[],"deny":["set_dock_visibility"]}},"deny-supports-multiple-windows":{"identifier":"deny-supports-multiple-windows","description":"Denies the supports_multiple_windows command without any pre-configured scope.","commands":{"allow":[],"deny":["supports_multiple_windows"]}},"deny-tauri-version":{"identifier":"deny-tauri-version","description":"Denies the tauri_version command without any pre-configured scope.","commands":{"allow":[],"deny":["tauri_version"]}},"deny-version":{"identifier":"deny-version","description":"Denies the version command without any pre-configured scope.","commands":{"allow":[],"deny":["version"]}}},"permission_sets":{},"global_scope_schema":null},"core:event":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-listen","allow-unlisten","allow-emit","allow-emit-to"]},"permissions":{"allow-emit":{"identifier":"allow-emit","description":"Enables the emit command without any pre-configured scope.","commands":{"allow":["emit"],"deny":[]}},"allow-emit-to":{"identifier":"allow-emit-to","description":"Enables the emit_to command without any pre-configured scope.","commands":{"allow":["emit_to"],"deny":[]}},"allow-listen":{"identifier":"allow-listen","description":"Enables the listen command without any pre-configured scope.","commands":{"allow":["listen"],"deny":[]}},"allow-unlisten":{"identifier":"allow-unlisten","description":"Enables the unlisten command without any pre-configured scope.","commands":{"allow":["unlisten"],"deny":[]}},"deny-emit":{"identifier":"deny-emit","description":"Denies the emit command without any pre-configured scope.","commands":{"allow":[],"deny":["emit"]}},"deny-emit-to":{"identifier":"deny-emit-to","description":"Denies the emit_to command without any pre-configured scope.","commands":{"allow":[],"deny":["emit_to"]}},"deny-listen":{"identifier":"deny-listen","description":"Denies the listen command without any pre-configured scope.","commands":{"allow":[],"deny":["listen"]}},"deny-unlisten":{"identifier":"deny-unlisten","description":"Denies the unlisten command without any pre-configured scope.","commands":{"allow":[],"deny":["unlisten"]}}},"permission_sets":{},"global_scope_schema":null},"core:image":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-new","allow-from-bytes","allow-from-path","allow-rgba","allow-size"]},"permissions":{"allow-from-bytes":{"identifier":"allow-from-bytes","description":"Enables the from_bytes command without any pre-configured scope.","commands":{"allow":["from_bytes"],"deny":[]}},"allow-from-path":{"identifier":"allow-from-path","description":"Enables the from_path command without any pre-configured scope.","commands":{"allow":["from_path"],"deny":[]}},"allow-new":{"identifier":"allow-new","description":"Enables the new command without any pre-configured scope.","commands":{"allow":["new"],"deny":[]}},"allow-rgba":{"identifier":"allow-rgba","description":"Enables the rgba command without any pre-configured scope.","commands":{"allow":["rgba"],"deny":[]}},"allow-size":{"identifier":"allow-size","description":"Enables the size command without any pre-configured scope.","commands":{"allow":["size"],"deny":[]}},"deny-from-bytes":{"identifier":"deny-from-bytes","description":"Denies the from_bytes command without any pre-configured scope.","commands":{"allow":[],"deny":["from_bytes"]}},"deny-from-path":{"identifier":"deny-from-path","description":"Denies the from_path command without any pre-configured scope.","commands":{"allow":[],"deny":["from_path"]}},"deny-new":{"identifier":"deny-new","description":"Denies the new command without any pre-configured scope.","commands":{"allow":[],"deny":["new"]}},"deny-rgba":{"identifier":"deny-rgba","description":"Denies the rgba command without any pre-configured scope.","commands":{"allow":[],"deny":["rgba"]}},"deny-size":{"identifier":"deny-size","description":"Denies the size command without any pre-configured scope.","commands":{"allow":[],"deny":["size"]}}},"permission_sets":{},"global_scope_schema":null},"core:menu":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-new","allow-append","allow-prepend","allow-insert","allow-remove","allow-remove-at","allow-items","allow-get","allow-popup","allow-create-default","allow-set-as-app-menu","allow-set-as-window-menu","allow-text","allow-set-text","allow-is-enabled","allow-set-enabled","allow-set-accelerator","allow-set-as-windows-menu-for-nsapp","allow-set-as-help-menu-for-nsapp","allow-is-checked","allow-set-checked","allow-set-icon"]},"permissions":{"allow-append":{"identifier":"allow-append","description":"Enables the append command without any pre-configured scope.","commands":{"allow":["append"],"deny":[]}},"allow-create-default":{"identifier":"allow-create-default","description":"Enables the create_default command without any pre-configured scope.","commands":{"allow":["create_default"],"deny":[]}},"allow-get":{"identifier":"allow-get","description":"Enables the get command without any pre-configured scope.","commands":{"allow":["get"],"deny":[]}},"allow-insert":{"identifier":"allow-insert","description":"Enables the insert command without any pre-configured scope.","commands":{"allow":["insert"],"deny":[]}},"allow-is-checked":{"identifier":"allow-is-checked","description":"Enables the is_checked command without any pre-configured scope.","commands":{"allow":["is_checked"],"deny":[]}},"allow-is-enabled":{"identifier":"allow-is-enabled","description":"Enables the is_enabled command without any pre-configured scope.","commands":{"allow":["is_enabled"],"deny":[]}},"allow-items":{"identifier":"allow-items","description":"Enables the items command without any pre-configured scope.","commands":{"allow":["items"],"deny":[]}},"allow-new":{"identifier":"allow-new","description":"Enables the new command without any pre-configured scope.","commands":{"allow":["new"],"deny":[]}},"allow-popup":{"identifier":"allow-popup","description":"Enables the popup command without any pre-configured scope.","commands":{"allow":["popup"],"deny":[]}},"allow-prepend":{"identifier":"allow-prepend","description":"Enables the prepend command without any pre-configured scope.","commands":{"allow":["prepend"],"deny":[]}},"allow-remove":{"identifier":"allow-remove","description":"Enables the remove command without any pre-configured scope.","commands":{"allow":["remove"],"deny":[]}},"allow-remove-at":{"identifier":"allow-remove-at","description":"Enables the remove_at command without any pre-configured scope.","commands":{"allow":["remove_at"],"deny":[]}},"allow-set-accelerator":{"identifier":"allow-set-accelerator","description":"Enables the set_accelerator command without any pre-configured scope.","commands":{"allow":["set_accelerator"],"deny":[]}},"allow-set-as-app-menu":{"identifier":"allow-set-as-app-menu","description":"Enables the set_as_app_menu command without any pre-configured scope.","commands":{"allow":["set_as_app_menu"],"deny":[]}},"allow-set-as-help-menu-for-nsapp":{"identifier":"allow-set-as-help-menu-for-nsapp","description":"Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":["set_as_help_menu_for_nsapp"],"deny":[]}},"allow-set-as-window-menu":{"identifier":"allow-set-as-window-menu","description":"Enables the set_as_window_menu command without any pre-configured scope.","commands":{"allow":["set_as_window_menu"],"deny":[]}},"allow-set-as-windows-menu-for-nsapp":{"identifier":"allow-set-as-windows-menu-for-nsapp","description":"Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":["set_as_windows_menu_for_nsapp"],"deny":[]}},"allow-set-checked":{"identifier":"allow-set-checked","description":"Enables the set_checked command without any pre-configured scope.","commands":{"allow":["set_checked"],"deny":[]}},"allow-set-enabled":{"identifier":"allow-set-enabled","description":"Enables the set_enabled command without any pre-configured scope.","commands":{"allow":["set_enabled"],"deny":[]}},"allow-set-icon":{"identifier":"allow-set-icon","description":"Enables the set_icon command without any pre-configured scope.","commands":{"allow":["set_icon"],"deny":[]}},"allow-set-text":{"identifier":"allow-set-text","description":"Enables the set_text command without any pre-configured scope.","commands":{"allow":["set_text"],"deny":[]}},"allow-text":{"identifier":"allow-text","description":"Enables the text command without any pre-configured scope.","commands":{"allow":["text"],"deny":[]}},"deny-append":{"identifier":"deny-append","description":"Denies the append command without any pre-configured scope.","commands":{"allow":[],"deny":["append"]}},"deny-create-default":{"identifier":"deny-create-default","description":"Denies the create_default command without any pre-configured scope.","commands":{"allow":[],"deny":["create_default"]}},"deny-get":{"identifier":"deny-get","description":"Denies the get command without any pre-configured scope.","commands":{"allow":[],"deny":["get"]}},"deny-insert":{"identifier":"deny-insert","description":"Denies the insert command without any pre-configured scope.","commands":{"allow":[],"deny":["insert"]}},"deny-is-checked":{"identifier":"deny-is-checked","description":"Denies the is_checked command without any pre-configured scope.","commands":{"allow":[],"deny":["is_checked"]}},"deny-is-enabled":{"identifier":"deny-is-enabled","description":"Denies the is_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["is_enabled"]}},"deny-items":{"identifier":"deny-items","description":"Denies the items command without any pre-configured scope.","commands":{"allow":[],"deny":["items"]}},"deny-new":{"identifier":"deny-new","description":"Denies the new command without any pre-configured scope.","commands":{"allow":[],"deny":["new"]}},"deny-popup":{"identifier":"deny-popup","description":"Denies the popup command without any pre-configured scope.","commands":{"allow":[],"deny":["popup"]}},"deny-prepend":{"identifier":"deny-prepend","description":"Denies the prepend command without any pre-configured scope.","commands":{"allow":[],"deny":["prepend"]}},"deny-remove":{"identifier":"deny-remove","description":"Denies the remove command without any pre-configured scope.","commands":{"allow":[],"deny":["remove"]}},"deny-remove-at":{"identifier":"deny-remove-at","description":"Denies the remove_at command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_at"]}},"deny-set-accelerator":{"identifier":"deny-set-accelerator","description":"Denies the set_accelerator command without any pre-configured scope.","commands":{"allow":[],"deny":["set_accelerator"]}},"deny-set-as-app-menu":{"identifier":"deny-set-as-app-menu","description":"Denies the set_as_app_menu command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_app_menu"]}},"deny-set-as-help-menu-for-nsapp":{"identifier":"deny-set-as-help-menu-for-nsapp","description":"Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_help_menu_for_nsapp"]}},"deny-set-as-window-menu":{"identifier":"deny-set-as-window-menu","description":"Denies the set_as_window_menu command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_window_menu"]}},"deny-set-as-windows-menu-for-nsapp":{"identifier":"deny-set-as-windows-menu-for-nsapp","description":"Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_windows_menu_for_nsapp"]}},"deny-set-checked":{"identifier":"deny-set-checked","description":"Denies the set_checked command without any pre-configured scope.","commands":{"allow":[],"deny":["set_checked"]}},"deny-set-enabled":{"identifier":"deny-set-enabled","description":"Denies the set_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["set_enabled"]}},"deny-set-icon":{"identifier":"deny-set-icon","description":"Denies the set_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon"]}},"deny-set-text":{"identifier":"deny-set-text","description":"Denies the set_text command without any pre-configured scope.","commands":{"allow":[],"deny":["set_text"]}},"deny-text":{"identifier":"deny-text","description":"Denies the text command without any pre-configured scope.","commands":{"allow":[],"deny":["text"]}}},"permission_sets":{},"global_scope_schema":null},"core:path":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-resolve-directory","allow-resolve","allow-normalize","allow-join","allow-dirname","allow-extname","allow-basename","allow-is-absolute"]},"permissions":{"allow-basename":{"identifier":"allow-basename","description":"Enables the basename command without any pre-configured scope.","commands":{"allow":["basename"],"deny":[]}},"allow-dirname":{"identifier":"allow-dirname","description":"Enables the dirname command without any pre-configured scope.","commands":{"allow":["dirname"],"deny":[]}},"allow-extname":{"identifier":"allow-extname","description":"Enables the extname command without any pre-configured scope.","commands":{"allow":["extname"],"deny":[]}},"allow-is-absolute":{"identifier":"allow-is-absolute","description":"Enables the is_absolute command without any pre-configured scope.","commands":{"allow":["is_absolute"],"deny":[]}},"allow-join":{"identifier":"allow-join","description":"Enables the join command without any pre-configured scope.","commands":{"allow":["join"],"deny":[]}},"allow-normalize":{"identifier":"allow-normalize","description":"Enables the normalize command without any pre-configured scope.","commands":{"allow":["normalize"],"deny":[]}},"allow-resolve":{"identifier":"allow-resolve","description":"Enables the resolve command without any pre-configured scope.","commands":{"allow":["resolve"],"deny":[]}},"allow-resolve-directory":{"identifier":"allow-resolve-directory","description":"Enables the resolve_directory command without any pre-configured scope.","commands":{"allow":["resolve_directory"],"deny":[]}},"deny-basename":{"identifier":"deny-basename","description":"Denies the basename command without any pre-configured scope.","commands":{"allow":[],"deny":["basename"]}},"deny-dirname":{"identifier":"deny-dirname","description":"Denies the dirname command without any pre-configured scope.","commands":{"allow":[],"deny":["dirname"]}},"deny-extname":{"identifier":"deny-extname","description":"Denies the extname command without any pre-configured scope.","commands":{"allow":[],"deny":["extname"]}},"deny-is-absolute":{"identifier":"deny-is-absolute","description":"Denies the is_absolute command without any pre-configured scope.","commands":{"allow":[],"deny":["is_absolute"]}},"deny-join":{"identifier":"deny-join","description":"Denies the join command without any pre-configured scope.","commands":{"allow":[],"deny":["join"]}},"deny-normalize":{"identifier":"deny-normalize","description":"Denies the normalize command without any pre-configured scope.","commands":{"allow":[],"deny":["normalize"]}},"deny-resolve":{"identifier":"deny-resolve","description":"Denies the resolve command without any pre-configured scope.","commands":{"allow":[],"deny":["resolve"]}},"deny-resolve-directory":{"identifier":"deny-resolve-directory","description":"Denies the resolve_directory command without any pre-configured scope.","commands":{"allow":[],"deny":["resolve_directory"]}}},"permission_sets":{},"global_scope_schema":null},"core:resources":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-close"]},"permissions":{"allow-close":{"identifier":"allow-close","description":"Enables the close command without any pre-configured scope.","commands":{"allow":["close"],"deny":[]}},"deny-close":{"identifier":"deny-close","description":"Denies the close command without any pre-configured scope.","commands":{"allow":[],"deny":["close"]}}},"permission_sets":{},"global_scope_schema":null},"core:tray":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-new","allow-get-by-id","allow-remove-by-id","allow-set-icon","allow-set-menu","allow-set-tooltip","allow-set-title","allow-set-visible","allow-set-temp-dir-path","allow-set-icon-as-template","allow-set-icon-with-as-template","allow-set-show-menu-on-left-click"]},"permissions":{"allow-get-by-id":{"identifier":"allow-get-by-id","description":"Enables the get_by_id command without any pre-configured scope.","commands":{"allow":["get_by_id"],"deny":[]}},"allow-new":{"identifier":"allow-new","description":"Enables the new command without any pre-configured scope.","commands":{"allow":["new"],"deny":[]}},"allow-remove-by-id":{"identifier":"allow-remove-by-id","description":"Enables the remove_by_id command without any pre-configured scope.","commands":{"allow":["remove_by_id"],"deny":[]}},"allow-set-icon":{"identifier":"allow-set-icon","description":"Enables the set_icon command without any pre-configured scope.","commands":{"allow":["set_icon"],"deny":[]}},"allow-set-icon-as-template":{"identifier":"allow-set-icon-as-template","description":"Enables the set_icon_as_template command without any pre-configured scope.","commands":{"allow":["set_icon_as_template"],"deny":[]}},"allow-set-icon-with-as-template":{"identifier":"allow-set-icon-with-as-template","description":"Enables the set_icon_with_as_template command without any pre-configured scope.","commands":{"allow":["set_icon_with_as_template"],"deny":[]}},"allow-set-menu":{"identifier":"allow-set-menu","description":"Enables the set_menu command without any pre-configured scope.","commands":{"allow":["set_menu"],"deny":[]}},"allow-set-show-menu-on-left-click":{"identifier":"allow-set-show-menu-on-left-click","description":"Enables the set_show_menu_on_left_click command without any pre-configured scope.","commands":{"allow":["set_show_menu_on_left_click"],"deny":[]}},"allow-set-temp-dir-path":{"identifier":"allow-set-temp-dir-path","description":"Enables the set_temp_dir_path command without any pre-configured scope.","commands":{"allow":["set_temp_dir_path"],"deny":[]}},"allow-set-title":{"identifier":"allow-set-title","description":"Enables the set_title command without any pre-configured scope.","commands":{"allow":["set_title"],"deny":[]}},"allow-set-tooltip":{"identifier":"allow-set-tooltip","description":"Enables the set_tooltip command without any pre-configured scope.","commands":{"allow":["set_tooltip"],"deny":[]}},"allow-set-visible":{"identifier":"allow-set-visible","description":"Enables the set_visible command without any pre-configured scope.","commands":{"allow":["set_visible"],"deny":[]}},"deny-get-by-id":{"identifier":"deny-get-by-id","description":"Denies the get_by_id command without any pre-configured scope.","commands":{"allow":[],"deny":["get_by_id"]}},"deny-new":{"identifier":"deny-new","description":"Denies the new command without any pre-configured scope.","commands":{"allow":[],"deny":["new"]}},"deny-remove-by-id":{"identifier":"deny-remove-by-id","description":"Denies the remove_by_id command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_by_id"]}},"deny-set-icon":{"identifier":"deny-set-icon","description":"Denies the set_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon"]}},"deny-set-icon-as-template":{"identifier":"deny-set-icon-as-template","description":"Denies the set_icon_as_template command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon_as_template"]}},"deny-set-icon-with-as-template":{"identifier":"deny-set-icon-with-as-template","description":"Denies the set_icon_with_as_template command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon_with_as_template"]}},"deny-set-menu":{"identifier":"deny-set-menu","description":"Denies the set_menu command without any pre-configured scope.","commands":{"allow":[],"deny":["set_menu"]}},"deny-set-show-menu-on-left-click":{"identifier":"deny-set-show-menu-on-left-click","description":"Denies the set_show_menu_on_left_click command without any pre-configured scope.","commands":{"allow":[],"deny":["set_show_menu_on_left_click"]}},"deny-set-temp-dir-path":{"identifier":"deny-set-temp-dir-path","description":"Denies the set_temp_dir_path command without any pre-configured scope.","commands":{"allow":[],"deny":["set_temp_dir_path"]}},"deny-set-title":{"identifier":"deny-set-title","description":"Denies the set_title command without any pre-configured scope.","commands":{"allow":[],"deny":["set_title"]}},"deny-set-tooltip":{"identifier":"deny-set-tooltip","description":"Denies the set_tooltip command without any pre-configured scope.","commands":{"allow":[],"deny":["set_tooltip"]}},"deny-set-visible":{"identifier":"deny-set-visible","description":"Denies the set_visible command without any pre-configured scope.","commands":{"allow":[],"deny":["set_visible"]}}},"permission_sets":{},"global_scope_schema":null},"core:webview":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin.","permissions":["allow-get-all-webviews","allow-webview-position","allow-webview-size","allow-internal-toggle-devtools"]},"permissions":{"allow-clear-all-browsing-data":{"identifier":"allow-clear-all-browsing-data","description":"Enables the clear_all_browsing_data command without any pre-configured scope.","commands":{"allow":["clear_all_browsing_data"],"deny":[]}},"allow-create-webview":{"identifier":"allow-create-webview","description":"Enables the create_webview command without any pre-configured scope.","commands":{"allow":["create_webview"],"deny":[]}},"allow-create-webview-window":{"identifier":"allow-create-webview-window","description":"Enables the create_webview_window command without any pre-configured scope.","commands":{"allow":["create_webview_window"],"deny":[]}},"allow-get-all-webviews":{"identifier":"allow-get-all-webviews","description":"Enables the get_all_webviews command without any pre-configured scope.","commands":{"allow":["get_all_webviews"],"deny":[]}},"allow-internal-toggle-devtools":{"identifier":"allow-internal-toggle-devtools","description":"Enables the internal_toggle_devtools command without any pre-configured scope.","commands":{"allow":["internal_toggle_devtools"],"deny":[]}},"allow-print":{"identifier":"allow-print","description":"Enables the print command without any pre-configured scope.","commands":{"allow":["print"],"deny":[]}},"allow-reparent":{"identifier":"allow-reparent","description":"Enables the reparent command without any pre-configured scope.","commands":{"allow":["reparent"],"deny":[]}},"allow-set-webview-auto-resize":{"identifier":"allow-set-webview-auto-resize","description":"Enables the set_webview_auto_resize command without any pre-configured scope.","commands":{"allow":["set_webview_auto_resize"],"deny":[]}},"allow-set-webview-background-color":{"identifier":"allow-set-webview-background-color","description":"Enables the set_webview_background_color command without any pre-configured scope.","commands":{"allow":["set_webview_background_color"],"deny":[]}},"allow-set-webview-focus":{"identifier":"allow-set-webview-focus","description":"Enables the set_webview_focus command without any pre-configured scope.","commands":{"allow":["set_webview_focus"],"deny":[]}},"allow-set-webview-position":{"identifier":"allow-set-webview-position","description":"Enables the set_webview_position command without any pre-configured scope.","commands":{"allow":["set_webview_position"],"deny":[]}},"allow-set-webview-size":{"identifier":"allow-set-webview-size","description":"Enables the set_webview_size command without any pre-configured scope.","commands":{"allow":["set_webview_size"],"deny":[]}},"allow-set-webview-zoom":{"identifier":"allow-set-webview-zoom","description":"Enables the set_webview_zoom command without any pre-configured scope.","commands":{"allow":["set_webview_zoom"],"deny":[]}},"allow-webview-close":{"identifier":"allow-webview-close","description":"Enables the webview_close command without any pre-configured scope.","commands":{"allow":["webview_close"],"deny":[]}},"allow-webview-hide":{"identifier":"allow-webview-hide","description":"Enables the webview_hide command without any pre-configured scope.","commands":{"allow":["webview_hide"],"deny":[]}},"allow-webview-position":{"identifier":"allow-webview-position","description":"Enables the webview_position command without any pre-configured scope.","commands":{"allow":["webview_position"],"deny":[]}},"allow-webview-show":{"identifier":"allow-webview-show","description":"Enables the webview_show command without any pre-configured scope.","commands":{"allow":["webview_show"],"deny":[]}},"allow-webview-size":{"identifier":"allow-webview-size","description":"Enables the webview_size command without any pre-configured scope.","commands":{"allow":["webview_size"],"deny":[]}},"deny-clear-all-browsing-data":{"identifier":"deny-clear-all-browsing-data","description":"Denies the clear_all_browsing_data command without any pre-configured scope.","commands":{"allow":[],"deny":["clear_all_browsing_data"]}},"deny-create-webview":{"identifier":"deny-create-webview","description":"Denies the create_webview command without any pre-configured scope.","commands":{"allow":[],"deny":["create_webview"]}},"deny-create-webview-window":{"identifier":"deny-create-webview-window","description":"Denies the create_webview_window command without any pre-configured scope.","commands":{"allow":[],"deny":["create_webview_window"]}},"deny-get-all-webviews":{"identifier":"deny-get-all-webviews","description":"Denies the get_all_webviews command without any pre-configured scope.","commands":{"allow":[],"deny":["get_all_webviews"]}},"deny-internal-toggle-devtools":{"identifier":"deny-internal-toggle-devtools","description":"Denies the internal_toggle_devtools command without any pre-configured scope.","commands":{"allow":[],"deny":["internal_toggle_devtools"]}},"deny-print":{"identifier":"deny-print","description":"Denies the print command without any pre-configured scope.","commands":{"allow":[],"deny":["print"]}},"deny-reparent":{"identifier":"deny-reparent","description":"Denies the reparent command without any pre-configured scope.","commands":{"allow":[],"deny":["reparent"]}},"deny-set-webview-auto-resize":{"identifier":"deny-set-webview-auto-resize","description":"Denies the set_webview_auto_resize command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_auto_resize"]}},"deny-set-webview-background-color":{"identifier":"deny-set-webview-background-color","description":"Denies the set_webview_background_color command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_background_color"]}},"deny-set-webview-focus":{"identifier":"deny-set-webview-focus","description":"Denies the set_webview_focus command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_focus"]}},"deny-set-webview-position":{"identifier":"deny-set-webview-position","description":"Denies the set_webview_position command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_position"]}},"deny-set-webview-size":{"identifier":"deny-set-webview-size","description":"Denies the set_webview_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_size"]}},"deny-set-webview-zoom":{"identifier":"deny-set-webview-zoom","description":"Denies the set_webview_zoom command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_zoom"]}},"deny-webview-close":{"identifier":"deny-webview-close","description":"Denies the webview_close command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_close"]}},"deny-webview-hide":{"identifier":"deny-webview-hide","description":"Denies the webview_hide command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_hide"]}},"deny-webview-position":{"identifier":"deny-webview-position","description":"Denies the webview_position command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_position"]}},"deny-webview-show":{"identifier":"deny-webview-show","description":"Denies the webview_show command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_show"]}},"deny-webview-size":{"identifier":"deny-webview-size","description":"Denies the webview_size command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_size"]}}},"permission_sets":{},"global_scope_schema":null},"core:window":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin.","permissions":["allow-get-all-windows","allow-scale-factor","allow-inner-position","allow-outer-position","allow-inner-size","allow-outer-size","allow-is-fullscreen","allow-is-minimized","allow-is-maximized","allow-is-focused","allow-is-decorated","allow-is-resizable","allow-is-maximizable","allow-is-minimizable","allow-is-closable","allow-is-visible","allow-is-enabled","allow-title","allow-current-monitor","allow-primary-monitor","allow-monitor-from-point","allow-available-monitors","allow-cursor-position","allow-theme","allow-is-always-on-top","allow-activity-name","allow-scene-identifier","allow-internal-toggle-maximize"]},"permissions":{"allow-activity-name":{"identifier":"allow-activity-name","description":"Enables the activity_name command without any pre-configured scope.","commands":{"allow":["activity_name"],"deny":[]}},"allow-available-monitors":{"identifier":"allow-available-monitors","description":"Enables the available_monitors command without any pre-configured scope.","commands":{"allow":["available_monitors"],"deny":[]}},"allow-center":{"identifier":"allow-center","description":"Enables the center command without any pre-configured scope.","commands":{"allow":["center"],"deny":[]}},"allow-close":{"identifier":"allow-close","description":"Enables the close command without any pre-configured scope.","commands":{"allow":["close"],"deny":[]}},"allow-create":{"identifier":"allow-create","description":"Enables the create command without any pre-configured scope.","commands":{"allow":["create"],"deny":[]}},"allow-current-monitor":{"identifier":"allow-current-monitor","description":"Enables the current_monitor command without any pre-configured scope.","commands":{"allow":["current_monitor"],"deny":[]}},"allow-cursor-position":{"identifier":"allow-cursor-position","description":"Enables the cursor_position command without any pre-configured scope.","commands":{"allow":["cursor_position"],"deny":[]}},"allow-destroy":{"identifier":"allow-destroy","description":"Enables the destroy command without any pre-configured scope.","commands":{"allow":["destroy"],"deny":[]}},"allow-get-all-windows":{"identifier":"allow-get-all-windows","description":"Enables the get_all_windows command without any pre-configured scope.","commands":{"allow":["get_all_windows"],"deny":[]}},"allow-hide":{"identifier":"allow-hide","description":"Enables the hide command without any pre-configured scope.","commands":{"allow":["hide"],"deny":[]}},"allow-inner-position":{"identifier":"allow-inner-position","description":"Enables the inner_position command without any pre-configured scope.","commands":{"allow":["inner_position"],"deny":[]}},"allow-inner-size":{"identifier":"allow-inner-size","description":"Enables the inner_size command without any pre-configured scope.","commands":{"allow":["inner_size"],"deny":[]}},"allow-internal-toggle-maximize":{"identifier":"allow-internal-toggle-maximize","description":"Enables the internal_toggle_maximize command without any pre-configured scope.","commands":{"allow":["internal_toggle_maximize"],"deny":[]}},"allow-is-always-on-top":{"identifier":"allow-is-always-on-top","description":"Enables the is_always_on_top command without any pre-configured scope.","commands":{"allow":["is_always_on_top"],"deny":[]}},"allow-is-closable":{"identifier":"allow-is-closable","description":"Enables the is_closable command without any pre-configured scope.","commands":{"allow":["is_closable"],"deny":[]}},"allow-is-decorated":{"identifier":"allow-is-decorated","description":"Enables the is_decorated command without any pre-configured scope.","commands":{"allow":["is_decorated"],"deny":[]}},"allow-is-enabled":{"identifier":"allow-is-enabled","description":"Enables the is_enabled command without any pre-configured scope.","commands":{"allow":["is_enabled"],"deny":[]}},"allow-is-focused":{"identifier":"allow-is-focused","description":"Enables the is_focused command without any pre-configured scope.","commands":{"allow":["is_focused"],"deny":[]}},"allow-is-fullscreen":{"identifier":"allow-is-fullscreen","description":"Enables the is_fullscreen command without any pre-configured scope.","commands":{"allow":["is_fullscreen"],"deny":[]}},"allow-is-maximizable":{"identifier":"allow-is-maximizable","description":"Enables the is_maximizable command without any pre-configured scope.","commands":{"allow":["is_maximizable"],"deny":[]}},"allow-is-maximized":{"identifier":"allow-is-maximized","description":"Enables the is_maximized command without any pre-configured scope.","commands":{"allow":["is_maximized"],"deny":[]}},"allow-is-minimizable":{"identifier":"allow-is-minimizable","description":"Enables the is_minimizable command without any pre-configured scope.","commands":{"allow":["is_minimizable"],"deny":[]}},"allow-is-minimized":{"identifier":"allow-is-minimized","description":"Enables the is_minimized command without any pre-configured scope.","commands":{"allow":["is_minimized"],"deny":[]}},"allow-is-resizable":{"identifier":"allow-is-resizable","description":"Enables the is_resizable command without any pre-configured scope.","commands":{"allow":["is_resizable"],"deny":[]}},"allow-is-visible":{"identifier":"allow-is-visible","description":"Enables the is_visible command without any pre-configured scope.","commands":{"allow":["is_visible"],"deny":[]}},"allow-maximize":{"identifier":"allow-maximize","description":"Enables the maximize command without any pre-configured scope.","commands":{"allow":["maximize"],"deny":[]}},"allow-minimize":{"identifier":"allow-minimize","description":"Enables the minimize command without any pre-configured scope.","commands":{"allow":["minimize"],"deny":[]}},"allow-monitor-from-point":{"identifier":"allow-monitor-from-point","description":"Enables the monitor_from_point command without any pre-configured scope.","commands":{"allow":["monitor_from_point"],"deny":[]}},"allow-outer-position":{"identifier":"allow-outer-position","description":"Enables the outer_position command without any pre-configured scope.","commands":{"allow":["outer_position"],"deny":[]}},"allow-outer-size":{"identifier":"allow-outer-size","description":"Enables the outer_size command without any pre-configured scope.","commands":{"allow":["outer_size"],"deny":[]}},"allow-primary-monitor":{"identifier":"allow-primary-monitor","description":"Enables the primary_monitor command without any pre-configured scope.","commands":{"allow":["primary_monitor"],"deny":[]}},"allow-request-user-attention":{"identifier":"allow-request-user-attention","description":"Enables the request_user_attention command without any pre-configured scope.","commands":{"allow":["request_user_attention"],"deny":[]}},"allow-scale-factor":{"identifier":"allow-scale-factor","description":"Enables the scale_factor command without any pre-configured scope.","commands":{"allow":["scale_factor"],"deny":[]}},"allow-scene-identifier":{"identifier":"allow-scene-identifier","description":"Enables the scene_identifier command without any pre-configured scope.","commands":{"allow":["scene_identifier"],"deny":[]}},"allow-set-always-on-bottom":{"identifier":"allow-set-always-on-bottom","description":"Enables the set_always_on_bottom command without any pre-configured scope.","commands":{"allow":["set_always_on_bottom"],"deny":[]}},"allow-set-always-on-top":{"identifier":"allow-set-always-on-top","description":"Enables the set_always_on_top command without any pre-configured scope.","commands":{"allow":["set_always_on_top"],"deny":[]}},"allow-set-background-color":{"identifier":"allow-set-background-color","description":"Enables the set_background_color command without any pre-configured scope.","commands":{"allow":["set_background_color"],"deny":[]}},"allow-set-badge-count":{"identifier":"allow-set-badge-count","description":"Enables the set_badge_count command without any pre-configured scope.","commands":{"allow":["set_badge_count"],"deny":[]}},"allow-set-badge-label":{"identifier":"allow-set-badge-label","description":"Enables the set_badge_label command without any pre-configured scope.","commands":{"allow":["set_badge_label"],"deny":[]}},"allow-set-closable":{"identifier":"allow-set-closable","description":"Enables the set_closable command without any pre-configured scope.","commands":{"allow":["set_closable"],"deny":[]}},"allow-set-content-protected":{"identifier":"allow-set-content-protected","description":"Enables the set_content_protected command without any pre-configured scope.","commands":{"allow":["set_content_protected"],"deny":[]}},"allow-set-cursor-grab":{"identifier":"allow-set-cursor-grab","description":"Enables the set_cursor_grab command without any pre-configured scope.","commands":{"allow":["set_cursor_grab"],"deny":[]}},"allow-set-cursor-icon":{"identifier":"allow-set-cursor-icon","description":"Enables the set_cursor_icon command without any pre-configured scope.","commands":{"allow":["set_cursor_icon"],"deny":[]}},"allow-set-cursor-position":{"identifier":"allow-set-cursor-position","description":"Enables the set_cursor_position command without any pre-configured scope.","commands":{"allow":["set_cursor_position"],"deny":[]}},"allow-set-cursor-visible":{"identifier":"allow-set-cursor-visible","description":"Enables the set_cursor_visible command without any pre-configured scope.","commands":{"allow":["set_cursor_visible"],"deny":[]}},"allow-set-decorations":{"identifier":"allow-set-decorations","description":"Enables the set_decorations command without any pre-configured scope.","commands":{"allow":["set_decorations"],"deny":[]}},"allow-set-effects":{"identifier":"allow-set-effects","description":"Enables the set_effects command without any pre-configured scope.","commands":{"allow":["set_effects"],"deny":[]}},"allow-set-enabled":{"identifier":"allow-set-enabled","description":"Enables the set_enabled command without any pre-configured scope.","commands":{"allow":["set_enabled"],"deny":[]}},"allow-set-focus":{"identifier":"allow-set-focus","description":"Enables the set_focus command without any pre-configured scope.","commands":{"allow":["set_focus"],"deny":[]}},"allow-set-focusable":{"identifier":"allow-set-focusable","description":"Enables the set_focusable command without any pre-configured scope.","commands":{"allow":["set_focusable"],"deny":[]}},"allow-set-fullscreen":{"identifier":"allow-set-fullscreen","description":"Enables the set_fullscreen command without any pre-configured scope.","commands":{"allow":["set_fullscreen"],"deny":[]}},"allow-set-icon":{"identifier":"allow-set-icon","description":"Enables the set_icon command without any pre-configured scope.","commands":{"allow":["set_icon"],"deny":[]}},"allow-set-ignore-cursor-events":{"identifier":"allow-set-ignore-cursor-events","description":"Enables the set_ignore_cursor_events command without any pre-configured scope.","commands":{"allow":["set_ignore_cursor_events"],"deny":[]}},"allow-set-max-size":{"identifier":"allow-set-max-size","description":"Enables the set_max_size command without any pre-configured scope.","commands":{"allow":["set_max_size"],"deny":[]}},"allow-set-maximizable":{"identifier":"allow-set-maximizable","description":"Enables the set_maximizable command without any pre-configured scope.","commands":{"allow":["set_maximizable"],"deny":[]}},"allow-set-min-size":{"identifier":"allow-set-min-size","description":"Enables the set_min_size command without any pre-configured scope.","commands":{"allow":["set_min_size"],"deny":[]}},"allow-set-minimizable":{"identifier":"allow-set-minimizable","description":"Enables the set_minimizable command without any pre-configured scope.","commands":{"allow":["set_minimizable"],"deny":[]}},"allow-set-overlay-icon":{"identifier":"allow-set-overlay-icon","description":"Enables the set_overlay_icon command without any pre-configured scope.","commands":{"allow":["set_overlay_icon"],"deny":[]}},"allow-set-position":{"identifier":"allow-set-position","description":"Enables the set_position command without any pre-configured scope.","commands":{"allow":["set_position"],"deny":[]}},"allow-set-progress-bar":{"identifier":"allow-set-progress-bar","description":"Enables the set_progress_bar command without any pre-configured scope.","commands":{"allow":["set_progress_bar"],"deny":[]}},"allow-set-resizable":{"identifier":"allow-set-resizable","description":"Enables the set_resizable command without any pre-configured scope.","commands":{"allow":["set_resizable"],"deny":[]}},"allow-set-shadow":{"identifier":"allow-set-shadow","description":"Enables the set_shadow command without any pre-configured scope.","commands":{"allow":["set_shadow"],"deny":[]}},"allow-set-simple-fullscreen":{"identifier":"allow-set-simple-fullscreen","description":"Enables the set_simple_fullscreen command without any pre-configured scope.","commands":{"allow":["set_simple_fullscreen"],"deny":[]}},"allow-set-size":{"identifier":"allow-set-size","description":"Enables the set_size command without any pre-configured scope.","commands":{"allow":["set_size"],"deny":[]}},"allow-set-size-constraints":{"identifier":"allow-set-size-constraints","description":"Enables the set_size_constraints command without any pre-configured scope.","commands":{"allow":["set_size_constraints"],"deny":[]}},"allow-set-skip-taskbar":{"identifier":"allow-set-skip-taskbar","description":"Enables the set_skip_taskbar command without any pre-configured scope.","commands":{"allow":["set_skip_taskbar"],"deny":[]}},"allow-set-theme":{"identifier":"allow-set-theme","description":"Enables the set_theme command without any pre-configured scope.","commands":{"allow":["set_theme"],"deny":[]}},"allow-set-title":{"identifier":"allow-set-title","description":"Enables the set_title command without any pre-configured scope.","commands":{"allow":["set_title"],"deny":[]}},"allow-set-title-bar-style":{"identifier":"allow-set-title-bar-style","description":"Enables the set_title_bar_style command without any pre-configured scope.","commands":{"allow":["set_title_bar_style"],"deny":[]}},"allow-set-visible-on-all-workspaces":{"identifier":"allow-set-visible-on-all-workspaces","description":"Enables the set_visible_on_all_workspaces command without any pre-configured scope.","commands":{"allow":["set_visible_on_all_workspaces"],"deny":[]}},"allow-show":{"identifier":"allow-show","description":"Enables the show command without any pre-configured scope.","commands":{"allow":["show"],"deny":[]}},"allow-start-dragging":{"identifier":"allow-start-dragging","description":"Enables the start_dragging command without any pre-configured scope.","commands":{"allow":["start_dragging"],"deny":[]}},"allow-start-resize-dragging":{"identifier":"allow-start-resize-dragging","description":"Enables the start_resize_dragging command without any pre-configured scope.","commands":{"allow":["start_resize_dragging"],"deny":[]}},"allow-theme":{"identifier":"allow-theme","description":"Enables the theme command without any pre-configured scope.","commands":{"allow":["theme"],"deny":[]}},"allow-title":{"identifier":"allow-title","description":"Enables the title command without any pre-configured scope.","commands":{"allow":["title"],"deny":[]}},"allow-toggle-maximize":{"identifier":"allow-toggle-maximize","description":"Enables the toggle_maximize command without any pre-configured scope.","commands":{"allow":["toggle_maximize"],"deny":[]}},"allow-unmaximize":{"identifier":"allow-unmaximize","description":"Enables the unmaximize command without any pre-configured scope.","commands":{"allow":["unmaximize"],"deny":[]}},"allow-unminimize":{"identifier":"allow-unminimize","description":"Enables the unminimize command without any pre-configured scope.","commands":{"allow":["unminimize"],"deny":[]}},"deny-activity-name":{"identifier":"deny-activity-name","description":"Denies the activity_name command without any pre-configured scope.","commands":{"allow":[],"deny":["activity_name"]}},"deny-available-monitors":{"identifier":"deny-available-monitors","description":"Denies the available_monitors command without any pre-configured scope.","commands":{"allow":[],"deny":["available_monitors"]}},"deny-center":{"identifier":"deny-center","description":"Denies the center command without any pre-configured scope.","commands":{"allow":[],"deny":["center"]}},"deny-close":{"identifier":"deny-close","description":"Denies the close command without any pre-configured scope.","commands":{"allow":[],"deny":["close"]}},"deny-create":{"identifier":"deny-create","description":"Denies the create command without any pre-configured scope.","commands":{"allow":[],"deny":["create"]}},"deny-current-monitor":{"identifier":"deny-current-monitor","description":"Denies the current_monitor command without any pre-configured scope.","commands":{"allow":[],"deny":["current_monitor"]}},"deny-cursor-position":{"identifier":"deny-cursor-position","description":"Denies the cursor_position command without any pre-configured scope.","commands":{"allow":[],"deny":["cursor_position"]}},"deny-destroy":{"identifier":"deny-destroy","description":"Denies the destroy command without any pre-configured scope.","commands":{"allow":[],"deny":["destroy"]}},"deny-get-all-windows":{"identifier":"deny-get-all-windows","description":"Denies the get_all_windows command without any pre-configured scope.","commands":{"allow":[],"deny":["get_all_windows"]}},"deny-hide":{"identifier":"deny-hide","description":"Denies the hide command without any pre-configured scope.","commands":{"allow":[],"deny":["hide"]}},"deny-inner-position":{"identifier":"deny-inner-position","description":"Denies the inner_position command without any pre-configured scope.","commands":{"allow":[],"deny":["inner_position"]}},"deny-inner-size":{"identifier":"deny-inner-size","description":"Denies the inner_size command without any pre-configured scope.","commands":{"allow":[],"deny":["inner_size"]}},"deny-internal-toggle-maximize":{"identifier":"deny-internal-toggle-maximize","description":"Denies the internal_toggle_maximize command without any pre-configured scope.","commands":{"allow":[],"deny":["internal_toggle_maximize"]}},"deny-is-always-on-top":{"identifier":"deny-is-always-on-top","description":"Denies the is_always_on_top command without any pre-configured scope.","commands":{"allow":[],"deny":["is_always_on_top"]}},"deny-is-closable":{"identifier":"deny-is-closable","description":"Denies the is_closable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_closable"]}},"deny-is-decorated":{"identifier":"deny-is-decorated","description":"Denies the is_decorated command without any pre-configured scope.","commands":{"allow":[],"deny":["is_decorated"]}},"deny-is-enabled":{"identifier":"deny-is-enabled","description":"Denies the is_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["is_enabled"]}},"deny-is-focused":{"identifier":"deny-is-focused","description":"Denies the is_focused command without any pre-configured scope.","commands":{"allow":[],"deny":["is_focused"]}},"deny-is-fullscreen":{"identifier":"deny-is-fullscreen","description":"Denies the is_fullscreen command without any pre-configured scope.","commands":{"allow":[],"deny":["is_fullscreen"]}},"deny-is-maximizable":{"identifier":"deny-is-maximizable","description":"Denies the is_maximizable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_maximizable"]}},"deny-is-maximized":{"identifier":"deny-is-maximized","description":"Denies the is_maximized command without any pre-configured scope.","commands":{"allow":[],"deny":["is_maximized"]}},"deny-is-minimizable":{"identifier":"deny-is-minimizable","description":"Denies the is_minimizable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_minimizable"]}},"deny-is-minimized":{"identifier":"deny-is-minimized","description":"Denies the is_minimized command without any pre-configured scope.","commands":{"allow":[],"deny":["is_minimized"]}},"deny-is-resizable":{"identifier":"deny-is-resizable","description":"Denies the is_resizable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_resizable"]}},"deny-is-visible":{"identifier":"deny-is-visible","description":"Denies the is_visible command without any pre-configured scope.","commands":{"allow":[],"deny":["is_visible"]}},"deny-maximize":{"identifier":"deny-maximize","description":"Denies the maximize command without any pre-configured scope.","commands":{"allow":[],"deny":["maximize"]}},"deny-minimize":{"identifier":"deny-minimize","description":"Denies the minimize command without any pre-configured scope.","commands":{"allow":[],"deny":["minimize"]}},"deny-monitor-from-point":{"identifier":"deny-monitor-from-point","description":"Denies the monitor_from_point command without any pre-configured scope.","commands":{"allow":[],"deny":["monitor_from_point"]}},"deny-outer-position":{"identifier":"deny-outer-position","description":"Denies the outer_position command without any pre-configured scope.","commands":{"allow":[],"deny":["outer_position"]}},"deny-outer-size":{"identifier":"deny-outer-size","description":"Denies the outer_size command without any pre-configured scope.","commands":{"allow":[],"deny":["outer_size"]}},"deny-primary-monitor":{"identifier":"deny-primary-monitor","description":"Denies the primary_monitor command without any pre-configured scope.","commands":{"allow":[],"deny":["primary_monitor"]}},"deny-request-user-attention":{"identifier":"deny-request-user-attention","description":"Denies the request_user_attention command without any pre-configured scope.","commands":{"allow":[],"deny":["request_user_attention"]}},"deny-scale-factor":{"identifier":"deny-scale-factor","description":"Denies the scale_factor command without any pre-configured scope.","commands":{"allow":[],"deny":["scale_factor"]}},"deny-scene-identifier":{"identifier":"deny-scene-identifier","description":"Denies the scene_identifier command without any pre-configured scope.","commands":{"allow":[],"deny":["scene_identifier"]}},"deny-set-always-on-bottom":{"identifier":"deny-set-always-on-bottom","description":"Denies the set_always_on_bottom command without any pre-configured scope.","commands":{"allow":[],"deny":["set_always_on_bottom"]}},"deny-set-always-on-top":{"identifier":"deny-set-always-on-top","description":"Denies the set_always_on_top command without any pre-configured scope.","commands":{"allow":[],"deny":["set_always_on_top"]}},"deny-set-background-color":{"identifier":"deny-set-background-color","description":"Denies the set_background_color command without any pre-configured scope.","commands":{"allow":[],"deny":["set_background_color"]}},"deny-set-badge-count":{"identifier":"deny-set-badge-count","description":"Denies the set_badge_count command without any pre-configured scope.","commands":{"allow":[],"deny":["set_badge_count"]}},"deny-set-badge-label":{"identifier":"deny-set-badge-label","description":"Denies the set_badge_label command without any pre-configured scope.","commands":{"allow":[],"deny":["set_badge_label"]}},"deny-set-closable":{"identifier":"deny-set-closable","description":"Denies the set_closable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_closable"]}},"deny-set-content-protected":{"identifier":"deny-set-content-protected","description":"Denies the set_content_protected command without any pre-configured scope.","commands":{"allow":[],"deny":["set_content_protected"]}},"deny-set-cursor-grab":{"identifier":"deny-set-cursor-grab","description":"Denies the set_cursor_grab command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_grab"]}},"deny-set-cursor-icon":{"identifier":"deny-set-cursor-icon","description":"Denies the set_cursor_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_icon"]}},"deny-set-cursor-position":{"identifier":"deny-set-cursor-position","description":"Denies the set_cursor_position command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_position"]}},"deny-set-cursor-visible":{"identifier":"deny-set-cursor-visible","description":"Denies the set_cursor_visible command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_visible"]}},"deny-set-decorations":{"identifier":"deny-set-decorations","description":"Denies the set_decorations command without any pre-configured scope.","commands":{"allow":[],"deny":["set_decorations"]}},"deny-set-effects":{"identifier":"deny-set-effects","description":"Denies the set_effects command without any pre-configured scope.","commands":{"allow":[],"deny":["set_effects"]}},"deny-set-enabled":{"identifier":"deny-set-enabled","description":"Denies the set_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["set_enabled"]}},"deny-set-focus":{"identifier":"deny-set-focus","description":"Denies the set_focus command without any pre-configured scope.","commands":{"allow":[],"deny":["set_focus"]}},"deny-set-focusable":{"identifier":"deny-set-focusable","description":"Denies the set_focusable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_focusable"]}},"deny-set-fullscreen":{"identifier":"deny-set-fullscreen","description":"Denies the set_fullscreen command without any pre-configured scope.","commands":{"allow":[],"deny":["set_fullscreen"]}},"deny-set-icon":{"identifier":"deny-set-icon","description":"Denies the set_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon"]}},"deny-set-ignore-cursor-events":{"identifier":"deny-set-ignore-cursor-events","description":"Denies the set_ignore_cursor_events command without any pre-configured scope.","commands":{"allow":[],"deny":["set_ignore_cursor_events"]}},"deny-set-max-size":{"identifier":"deny-set-max-size","description":"Denies the set_max_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_max_size"]}},"deny-set-maximizable":{"identifier":"deny-set-maximizable","description":"Denies the set_maximizable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_maximizable"]}},"deny-set-min-size":{"identifier":"deny-set-min-size","description":"Denies the set_min_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_min_size"]}},"deny-set-minimizable":{"identifier":"deny-set-minimizable","description":"Denies the set_minimizable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_minimizable"]}},"deny-set-overlay-icon":{"identifier":"deny-set-overlay-icon","description":"Denies the set_overlay_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_overlay_icon"]}},"deny-set-position":{"identifier":"deny-set-position","description":"Denies the set_position command without any pre-configured scope.","commands":{"allow":[],"deny":["set_position"]}},"deny-set-progress-bar":{"identifier":"deny-set-progress-bar","description":"Denies the set_progress_bar command without any pre-configured scope.","commands":{"allow":[],"deny":["set_progress_bar"]}},"deny-set-resizable":{"identifier":"deny-set-resizable","description":"Denies the set_resizable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_resizable"]}},"deny-set-shadow":{"identifier":"deny-set-shadow","description":"Denies the set_shadow command without any pre-configured scope.","commands":{"allow":[],"deny":["set_shadow"]}},"deny-set-simple-fullscreen":{"identifier":"deny-set-simple-fullscreen","description":"Denies the set_simple_fullscreen command without any pre-configured scope.","commands":{"allow":[],"deny":["set_simple_fullscreen"]}},"deny-set-size":{"identifier":"deny-set-size","description":"Denies the set_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_size"]}},"deny-set-size-constraints":{"identifier":"deny-set-size-constraints","description":"Denies the set_size_constraints command without any pre-configured scope.","commands":{"allow":[],"deny":["set_size_constraints"]}},"deny-set-skip-taskbar":{"identifier":"deny-set-skip-taskbar","description":"Denies the set_skip_taskbar command without any pre-configured scope.","commands":{"allow":[],"deny":["set_skip_taskbar"]}},"deny-set-theme":{"identifier":"deny-set-theme","description":"Denies the set_theme command without any pre-configured scope.","commands":{"allow":[],"deny":["set_theme"]}},"deny-set-title":{"identifier":"deny-set-title","description":"Denies the set_title command without any pre-configured scope.","commands":{"allow":[],"deny":["set_title"]}},"deny-set-title-bar-style":{"identifier":"deny-set-title-bar-style","description":"Denies the set_title_bar_style command without any pre-configured scope.","commands":{"allow":[],"deny":["set_title_bar_style"]}},"deny-set-visible-on-all-workspaces":{"identifier":"deny-set-visible-on-all-workspaces","description":"Denies the set_visible_on_all_workspaces command without any pre-configured scope.","commands":{"allow":[],"deny":["set_visible_on_all_workspaces"]}},"deny-show":{"identifier":"deny-show","description":"Denies the show command without any pre-configured scope.","commands":{"allow":[],"deny":["show"]}},"deny-start-dragging":{"identifier":"deny-start-dragging","description":"Denies the start_dragging command without any pre-configured scope.","commands":{"allow":[],"deny":["start_dragging"]}},"deny-start-resize-dragging":{"identifier":"deny-start-resize-dragging","description":"Denies the start_resize_dragging command without any pre-configured scope.","commands":{"allow":[],"deny":["start_resize_dragging"]}},"deny-theme":{"identifier":"deny-theme","description":"Denies the theme command without any pre-configured scope.","commands":{"allow":[],"deny":["theme"]}},"deny-title":{"identifier":"deny-title","description":"Denies the title command without any pre-configured scope.","commands":{"allow":[],"deny":["title"]}},"deny-toggle-maximize":{"identifier":"deny-toggle-maximize","description":"Denies the toggle_maximize command without any pre-configured scope.","commands":{"allow":[],"deny":["toggle_maximize"]}},"deny-unmaximize":{"identifier":"deny-unmaximize","description":"Denies the unmaximize command without any pre-configured scope.","commands":{"allow":[],"deny":["unmaximize"]}},"deny-unminimize":{"identifier":"deny-unminimize","description":"Denies the unminimize command without any pre-configured scope.","commands":{"allow":[],"deny":["unminimize"]}}},"permission_sets":{},"global_scope_schema":null},"dialog":{"default_permission":{"identifier":"default","description":"This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n","permissions":["allow-message","allow-save","allow-open"]},"permissions":{"allow-ask":{"identifier":"allow-ask","description":"Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)","commands":{"allow":["message"],"deny":[]}},"allow-confirm":{"identifier":"allow-confirm","description":"Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)","commands":{"allow":["message"],"deny":[]}},"allow-message":{"identifier":"allow-message","description":"Enables the message command without any pre-configured scope.","commands":{"allow":["message"],"deny":[]}},"allow-open":{"identifier":"allow-open","description":"Enables the open command without any pre-configured scope.","commands":{"allow":["open"],"deny":[]}},"allow-save":{"identifier":"allow-save","description":"Enables the save command without any pre-configured scope.","commands":{"allow":["save"],"deny":[]}},"deny-ask":{"identifier":"deny-ask","description":"Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)","commands":{"allow":[],"deny":["message"]}},"deny-confirm":{"identifier":"deny-confirm","description":"Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)","commands":{"allow":[],"deny":["message"]}},"deny-message":{"identifier":"deny-message","description":"Denies the message command without any pre-configured scope.","commands":{"allow":[],"deny":["message"]}},"deny-open":{"identifier":"deny-open","description":"Denies the open command without any pre-configured scope.","commands":{"allow":[],"deny":["open"]}},"deny-save":{"identifier":"deny-save","description":"Denies the save command without any pre-configured scope.","commands":{"allow":[],"deny":["save"]}}},"permission_sets":{},"global_scope_schema":null},"global-shortcut":{"default_permission":{"identifier":"default","description":"No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n","permissions":[]},"permissions":{"allow-is-registered":{"identifier":"allow-is-registered","description":"Enables the is_registered command without any pre-configured scope.","commands":{"allow":["is_registered"],"deny":[]}},"allow-register":{"identifier":"allow-register","description":"Enables the register command without any pre-configured scope.","commands":{"allow":["register"],"deny":[]}},"allow-register-all":{"identifier":"allow-register-all","description":"Enables the register_all command without any pre-configured scope.","commands":{"allow":["register_all"],"deny":[]}},"allow-unregister":{"identifier":"allow-unregister","description":"Enables the unregister command without any pre-configured scope.","commands":{"allow":["unregister"],"deny":[]}},"allow-unregister-all":{"identifier":"allow-unregister-all","description":"Enables the unregister_all command without any pre-configured scope.","commands":{"allow":["unregister_all"],"deny":[]}},"deny-is-registered":{"identifier":"deny-is-registered","description":"Denies the is_registered command without any pre-configured scope.","commands":{"allow":[],"deny":["is_registered"]}},"deny-register":{"identifier":"deny-register","description":"Denies the register command without any pre-configured scope.","commands":{"allow":[],"deny":["register"]}},"deny-register-all":{"identifier":"deny-register-all","description":"Denies the register_all command without any pre-configured scope.","commands":{"allow":[],"deny":["register_all"]}},"deny-unregister":{"identifier":"deny-unregister","description":"Denies the unregister command without any pre-configured scope.","commands":{"allow":[],"deny":["unregister"]}},"deny-unregister-all":{"identifier":"deny-unregister-all","description":"Denies the unregister_all command without any pre-configured scope.","commands":{"allow":[],"deny":["unregister_all"]}}},"permission_sets":{},"global_scope_schema":null}} \ No newline at end of file diff --git a/src-tauri/gen/schemas/capabilities.json b/src-tauri/gen/schemas/capabilities.json new file mode 100644 index 0000000..a2b8c13 --- /dev/null +++ b/src-tauri/gen/schemas/capabilities.json @@ -0,0 +1 @@ +{"default":{"identifier":"default","description":"Snaplet desktop permissions","local":true,"windows":["main","capture"],"permissions":["core:default","core:window:allow-close","core:window:allow-hide","core:window:allow-show","autostart:default","clipboard-manager:allow-write-image","dialog:allow-save","global-shortcut:allow-register","global-shortcut:allow-unregister","global-shortcut:allow-is-registered"]}} \ No newline at end of file diff --git a/src-tauri/gen/schemas/desktop-schema.json b/src-tauri/gen/schemas/desktop-schema.json new file mode 100644 index 0000000..f1da633 --- /dev/null +++ b/src-tauri/gen/schemas/desktop-schema.json @@ -0,0 +1,2544 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "CapabilityFile", + "description": "Capability formats accepted in a capability file.", + "anyOf": [ + { + "description": "A single capability.", + "allOf": [ + { + "$ref": "#/definitions/Capability" + } + ] + }, + { + "description": "A list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + }, + { + "description": "A list of capabilities.", + "type": "object", + "required": [ + "capabilities" + ], + "properties": { + "capabilities": { + "description": "The list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + } + } + } + ], + "definitions": { + "Capability": { + "description": "A grouping and boundary mechanism developers can use to isolate access to the IPC layer.\n\nIt controls application windows' and webviews' fine grained access to the Tauri core, application, or plugin commands. If a webview or its window is not matching any capability then it has no access to the IPC layer at all.\n\nThis can be done to create groups of windows, based on their required system access, which can reduce impact of frontend vulnerabilities in less privileged windows. Windows can be added to a capability by exact name (e.g. `main-window`) or glob patterns like `*` or `admin-*`. A Window can have none, one, or multiple associated capabilities.\n\n## Example\n\n```json { \"identifier\": \"main-user-files-write\", \"description\": \"This capability allows the `main` window on macOS and Windows access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.\", \"windows\": [ \"main\" ], \"permissions\": [ \"core:default\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] }, ], \"platforms\": [\"macOS\",\"windows\"] } ```", + "type": "object", + "required": [ + "identifier", + "permissions" + ], + "properties": { + "identifier": { + "description": "Identifier of the capability.\n\n## Example\n\n`main-user-files-write`", + "type": "string" + }, + "description": { + "description": "Description of what the capability is intended to allow on associated windows.\n\nIt should contain a description of what the grouped permissions should allow.\n\n## Example\n\nThis capability allows the `main` window access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.", + "default": "", + "type": "string" + }, + "remote": { + "description": "Configure remote URLs that can use the capability permissions.\n\nThis setting is optional and defaults to not being set, as our default use case is that the content is served from our local application.\n\n:::caution Make sure you understand the security implications of providing remote sources with local system access. :::\n\n## Example\n\n```json { \"urls\": [\"https://*.mydomain.dev\"] } ```", + "anyOf": [ + { + "$ref": "#/definitions/CapabilityRemote" + }, + { + "type": "null" + } + ] + }, + "local": { + "description": "Whether this capability is enabled for local app URLs or not. Defaults to `true`.", + "default": true, + "type": "boolean" + }, + "windows": { + "description": "List of windows that are affected by this capability. Can be a glob pattern.\n\nIf a window label matches any of the patterns in this list, the capability will be enabled on all the webviews of that window, regardless of the value of [`Self::webviews`].\n\nOn multiwebview windows, prefer specifying [`Self::webviews`] and omitting [`Self::windows`] for a fine grained access control.\n\n## Example\n\n`[\"main\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "webviews": { + "description": "List of webviews that are affected by this capability. Can be a glob pattern.\n\nThe capability will be enabled on all the webviews whose label matches any of the patterns in this list, regardless of whether the webview's window label matches a pattern in [`Self::windows`].\n\n## Example\n\n`[\"sub-webview-one\", \"sub-webview-two\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "permissions": { + "description": "List of permissions attached to this capability.\n\nMust include the plugin name as prefix in the form of `${plugin-name}:${permission-name}`. For commands directly implemented in the application itself only `${permission-name}` is required.\n\n## Example\n\n```json [ \"core:default\", \"shell:allow-open\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] } ] ```", + "type": "array", + "items": { + "$ref": "#/definitions/PermissionEntry" + }, + "uniqueItems": true + }, + "platforms": { + "description": "Limit which target platforms this capability applies to.\n\nBy default all platforms are targeted.\n\n## Example\n\n`[\"macOS\",\"windows\"]`", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Target" + } + } + } + }, + "CapabilityRemote": { + "description": "Configuration for remote URLs that are associated with the capability.", + "type": "object", + "required": [ + "urls" + ], + "properties": { + "urls": { + "description": "Remote domains this capability refers to using the [URLPattern standard](https://urlpattern.spec.whatwg.org/).\n\n## Examples\n\n- \"https://*.mydomain.dev\": allows subdomains of mydomain.dev - \"https://mydomain.dev/api/*\": allows any subpath of mydomain.dev/api", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PermissionEntry": { + "description": "An entry for a permission value in a [`Capability`] can be either a raw permission [`Identifier`] or an object that references a permission and extends its scope.", + "anyOf": [ + { + "description": "Reference a permission or permission set by identifier.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + { + "description": "Reference a permission or permission set by identifier and extends its scope.", + "type": "object", + "allOf": [ + { + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + "allow": { + "description": "Data that defines what is allowed by the scope.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + }, + "deny": { + "description": "Data that defines what is denied by the scope. This should be prioritized by validation logic.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + } + } + } + ], + "required": [ + "identifier" + ] + } + ] + }, + "Identifier": { + "description": "Permission identifier", + "oneOf": [ + { + "description": "This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n\n#### This default permission set includes:\n\n- `allow-enable`\n- `allow-disable`\n- `allow-is-enabled`", + "type": "string", + "const": "autostart:default", + "markdownDescription": "This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n\n#### This default permission set includes:\n\n- `allow-enable`\n- `allow-disable`\n- `allow-is-enabled`" + }, + { + "description": "Enables the disable command without any pre-configured scope.", + "type": "string", + "const": "autostart:allow-disable", + "markdownDescription": "Enables the disable command without any pre-configured scope." + }, + { + "description": "Enables the enable command without any pre-configured scope.", + "type": "string", + "const": "autostart:allow-enable", + "markdownDescription": "Enables the enable command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "autostart:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the disable command without any pre-configured scope.", + "type": "string", + "const": "autostart:deny-disable", + "markdownDescription": "Denies the disable command without any pre-configured scope." + }, + { + "description": "Denies the enable command without any pre-configured scope.", + "type": "string", + "const": "autostart:deny-enable", + "markdownDescription": "Denies the enable command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "autostart:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n", + "type": "string", + "const": "clipboard-manager:default", + "markdownDescription": "No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n" + }, + { + "description": "Enables the clear command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-clear", + "markdownDescription": "Enables the clear command without any pre-configured scope." + }, + { + "description": "Enables the read_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-read-image", + "markdownDescription": "Enables the read_image command without any pre-configured scope." + }, + { + "description": "Enables the read_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-read-text", + "markdownDescription": "Enables the read_text command without any pre-configured scope." + }, + { + "description": "Enables the write_html command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-write-html", + "markdownDescription": "Enables the write_html command without any pre-configured scope." + }, + { + "description": "Enables the write_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-write-image", + "markdownDescription": "Enables the write_image command without any pre-configured scope." + }, + { + "description": "Enables the write_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-write-text", + "markdownDescription": "Enables the write_text command without any pre-configured scope." + }, + { + "description": "Denies the clear command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-clear", + "markdownDescription": "Denies the clear command without any pre-configured scope." + }, + { + "description": "Denies the read_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-read-image", + "markdownDescription": "Denies the read_image command without any pre-configured scope." + }, + { + "description": "Denies the read_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-read-text", + "markdownDescription": "Denies the read_text command without any pre-configured scope." + }, + { + "description": "Denies the write_html command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-write-html", + "markdownDescription": "Denies the write_html command without any pre-configured scope." + }, + { + "description": "Denies the write_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-write-image", + "markdownDescription": "Denies the write_image command without any pre-configured scope." + }, + { + "description": "Denies the write_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-write-text", + "markdownDescription": "Denies the write_text command without any pre-configured scope." + }, + { + "description": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`", + "type": "string", + "const": "core:default", + "markdownDescription": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`" + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`\n- `allow-supports-multiple-windows`", + "type": "string", + "const": "core:app:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`\n- `allow-supports-multiple-windows`" + }, + { + "description": "Enables the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-hide", + "markdownDescription": "Enables the app_hide command without any pre-configured scope." + }, + { + "description": "Enables the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-show", + "markdownDescription": "Enables the app_show command without any pre-configured scope." + }, + { + "description": "Enables the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-bundle-type", + "markdownDescription": "Enables the bundle_type command without any pre-configured scope." + }, + { + "description": "Enables the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-default-window-icon", + "markdownDescription": "Enables the default_window_icon command without any pre-configured scope." + }, + { + "description": "Enables the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-fetch-data-store-identifiers", + "markdownDescription": "Enables the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Enables the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-identifier", + "markdownDescription": "Enables the identifier command without any pre-configured scope." + }, + { + "description": "Enables the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-name", + "markdownDescription": "Enables the name command without any pre-configured scope." + }, + { + "description": "Enables the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-register-listener", + "markdownDescription": "Enables the register_listener command without any pre-configured scope." + }, + { + "description": "Enables the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-data-store", + "markdownDescription": "Enables the remove_data_store command without any pre-configured scope." + }, + { + "description": "Enables the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-listener", + "markdownDescription": "Enables the remove_listener command without any pre-configured scope." + }, + { + "description": "Enables the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-app-theme", + "markdownDescription": "Enables the set_app_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-dock-visibility", + "markdownDescription": "Enables the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Enables the supports_multiple_windows command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-supports-multiple-windows", + "markdownDescription": "Enables the supports_multiple_windows command without any pre-configured scope." + }, + { + "description": "Enables the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-tauri-version", + "markdownDescription": "Enables the tauri_version command without any pre-configured scope." + }, + { + "description": "Enables the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-version", + "markdownDescription": "Enables the version command without any pre-configured scope." + }, + { + "description": "Denies the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-hide", + "markdownDescription": "Denies the app_hide command without any pre-configured scope." + }, + { + "description": "Denies the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-show", + "markdownDescription": "Denies the app_show command without any pre-configured scope." + }, + { + "description": "Denies the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-bundle-type", + "markdownDescription": "Denies the bundle_type command without any pre-configured scope." + }, + { + "description": "Denies the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-default-window-icon", + "markdownDescription": "Denies the default_window_icon command without any pre-configured scope." + }, + { + "description": "Denies the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-fetch-data-store-identifiers", + "markdownDescription": "Denies the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Denies the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-identifier", + "markdownDescription": "Denies the identifier command without any pre-configured scope." + }, + { + "description": "Denies the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-name", + "markdownDescription": "Denies the name command without any pre-configured scope." + }, + { + "description": "Denies the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-register-listener", + "markdownDescription": "Denies the register_listener command without any pre-configured scope." + }, + { + "description": "Denies the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-data-store", + "markdownDescription": "Denies the remove_data_store command without any pre-configured scope." + }, + { + "description": "Denies the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-listener", + "markdownDescription": "Denies the remove_listener command without any pre-configured scope." + }, + { + "description": "Denies the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-app-theme", + "markdownDescription": "Denies the set_app_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-dock-visibility", + "markdownDescription": "Denies the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Denies the supports_multiple_windows command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-supports-multiple-windows", + "markdownDescription": "Denies the supports_multiple_windows command without any pre-configured scope." + }, + { + "description": "Denies the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-tauri-version", + "markdownDescription": "Denies the tauri_version command without any pre-configured scope." + }, + { + "description": "Denies the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-version", + "markdownDescription": "Denies the version command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`", + "type": "string", + "const": "core:event:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`" + }, + { + "description": "Enables the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit", + "markdownDescription": "Enables the emit command without any pre-configured scope." + }, + { + "description": "Enables the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit-to", + "markdownDescription": "Enables the emit_to command without any pre-configured scope." + }, + { + "description": "Enables the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-listen", + "markdownDescription": "Enables the listen command without any pre-configured scope." + }, + { + "description": "Enables the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-unlisten", + "markdownDescription": "Enables the unlisten command without any pre-configured scope." + }, + { + "description": "Denies the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit", + "markdownDescription": "Denies the emit command without any pre-configured scope." + }, + { + "description": "Denies the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit-to", + "markdownDescription": "Denies the emit_to command without any pre-configured scope." + }, + { + "description": "Denies the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-listen", + "markdownDescription": "Denies the listen command without any pre-configured scope." + }, + { + "description": "Denies the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-unlisten", + "markdownDescription": "Denies the unlisten command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`", + "type": "string", + "const": "core:image:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`" + }, + { + "description": "Enables the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-bytes", + "markdownDescription": "Enables the from_bytes command without any pre-configured scope." + }, + { + "description": "Enables the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-path", + "markdownDescription": "Enables the from_path command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-rgba", + "markdownDescription": "Enables the rgba command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Denies the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-bytes", + "markdownDescription": "Denies the from_bytes command without any pre-configured scope." + }, + { + "description": "Denies the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-path", + "markdownDescription": "Denies the from_path command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-rgba", + "markdownDescription": "Denies the rgba command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`", + "type": "string", + "const": "core:menu:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`" + }, + { + "description": "Enables the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-append", + "markdownDescription": "Enables the append command without any pre-configured scope." + }, + { + "description": "Enables the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-create-default", + "markdownDescription": "Enables the create_default command without any pre-configured scope." + }, + { + "description": "Enables the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-get", + "markdownDescription": "Enables the get command without any pre-configured scope." + }, + { + "description": "Enables the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-insert", + "markdownDescription": "Enables the insert command without any pre-configured scope." + }, + { + "description": "Enables the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-checked", + "markdownDescription": "Enables the is_checked command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-items", + "markdownDescription": "Enables the items command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-popup", + "markdownDescription": "Enables the popup command without any pre-configured scope." + }, + { + "description": "Enables the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-prepend", + "markdownDescription": "Enables the prepend command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove-at", + "markdownDescription": "Enables the remove_at command without any pre-configured scope." + }, + { + "description": "Enables the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-accelerator", + "markdownDescription": "Enables the set_accelerator command without any pre-configured scope." + }, + { + "description": "Enables the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-app-menu", + "markdownDescription": "Enables the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-help-menu-for-nsapp", + "markdownDescription": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-window-menu", + "markdownDescription": "Enables the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-windows-menu-for-nsapp", + "markdownDescription": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-checked", + "markdownDescription": "Enables the set_checked command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-text", + "markdownDescription": "Enables the set_text command without any pre-configured scope." + }, + { + "description": "Enables the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-text", + "markdownDescription": "Enables the text command without any pre-configured scope." + }, + { + "description": "Denies the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-append", + "markdownDescription": "Denies the append command without any pre-configured scope." + }, + { + "description": "Denies the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-create-default", + "markdownDescription": "Denies the create_default command without any pre-configured scope." + }, + { + "description": "Denies the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-get", + "markdownDescription": "Denies the get command without any pre-configured scope." + }, + { + "description": "Denies the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-insert", + "markdownDescription": "Denies the insert command without any pre-configured scope." + }, + { + "description": "Denies the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-checked", + "markdownDescription": "Denies the is_checked command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-items", + "markdownDescription": "Denies the items command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-popup", + "markdownDescription": "Denies the popup command without any pre-configured scope." + }, + { + "description": "Denies the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-prepend", + "markdownDescription": "Denies the prepend command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove-at", + "markdownDescription": "Denies the remove_at command without any pre-configured scope." + }, + { + "description": "Denies the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-accelerator", + "markdownDescription": "Denies the set_accelerator command without any pre-configured scope." + }, + { + "description": "Denies the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-app-menu", + "markdownDescription": "Denies the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-help-menu-for-nsapp", + "markdownDescription": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-window-menu", + "markdownDescription": "Denies the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-windows-menu-for-nsapp", + "markdownDescription": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-checked", + "markdownDescription": "Denies the set_checked command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-text", + "markdownDescription": "Denies the set_text command without any pre-configured scope." + }, + { + "description": "Denies the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-text", + "markdownDescription": "Denies the text command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`", + "type": "string", + "const": "core:path:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`" + }, + { + "description": "Enables the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-basename", + "markdownDescription": "Enables the basename command without any pre-configured scope." + }, + { + "description": "Enables the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-dirname", + "markdownDescription": "Enables the dirname command without any pre-configured scope." + }, + { + "description": "Enables the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-extname", + "markdownDescription": "Enables the extname command without any pre-configured scope." + }, + { + "description": "Enables the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-is-absolute", + "markdownDescription": "Enables the is_absolute command without any pre-configured scope." + }, + { + "description": "Enables the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-join", + "markdownDescription": "Enables the join command without any pre-configured scope." + }, + { + "description": "Enables the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-normalize", + "markdownDescription": "Enables the normalize command without any pre-configured scope." + }, + { + "description": "Enables the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve", + "markdownDescription": "Enables the resolve command without any pre-configured scope." + }, + { + "description": "Enables the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve-directory", + "markdownDescription": "Enables the resolve_directory command without any pre-configured scope." + }, + { + "description": "Denies the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-basename", + "markdownDescription": "Denies the basename command without any pre-configured scope." + }, + { + "description": "Denies the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-dirname", + "markdownDescription": "Denies the dirname command without any pre-configured scope." + }, + { + "description": "Denies the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-extname", + "markdownDescription": "Denies the extname command without any pre-configured scope." + }, + { + "description": "Denies the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-is-absolute", + "markdownDescription": "Denies the is_absolute command without any pre-configured scope." + }, + { + "description": "Denies the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-join", + "markdownDescription": "Denies the join command without any pre-configured scope." + }, + { + "description": "Denies the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-normalize", + "markdownDescription": "Denies the normalize command without any pre-configured scope." + }, + { + "description": "Denies the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve", + "markdownDescription": "Denies the resolve command without any pre-configured scope." + }, + { + "description": "Denies the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve-directory", + "markdownDescription": "Denies the resolve_directory command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`", + "type": "string", + "const": "core:resources:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`" + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-icon-with-as-template`\n- `allow-set-show-menu-on-left-click`", + "type": "string", + "const": "core:tray:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-icon-with-as-template`\n- `allow-set-show-menu-on-left-click`" + }, + { + "description": "Enables the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-get-by-id", + "markdownDescription": "Enables the get_by_id command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-remove-by-id", + "markdownDescription": "Enables the remove_by_id command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon-as-template", + "markdownDescription": "Enables the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Enables the set_icon_with_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon-with-as-template", + "markdownDescription": "Enables the set_icon_with_as_template command without any pre-configured scope." + }, + { + "description": "Enables the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-menu", + "markdownDescription": "Enables the set_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-show-menu-on-left-click", + "markdownDescription": "Enables the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Enables the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-temp-dir-path", + "markdownDescription": "Enables the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-tooltip", + "markdownDescription": "Enables the set_tooltip command without any pre-configured scope." + }, + { + "description": "Enables the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-visible", + "markdownDescription": "Enables the set_visible command without any pre-configured scope." + }, + { + "description": "Denies the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-get-by-id", + "markdownDescription": "Denies the get_by_id command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-remove-by-id", + "markdownDescription": "Denies the remove_by_id command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon-as-template", + "markdownDescription": "Denies the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Denies the set_icon_with_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon-with-as-template", + "markdownDescription": "Denies the set_icon_with_as_template command without any pre-configured scope." + }, + { + "description": "Denies the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-menu", + "markdownDescription": "Denies the set_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-show-menu-on-left-click", + "markdownDescription": "Denies the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Denies the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-temp-dir-path", + "markdownDescription": "Denies the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-tooltip", + "markdownDescription": "Denies the set_tooltip command without any pre-configured scope." + }, + { + "description": "Denies the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-visible", + "markdownDescription": "Denies the set_visible command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`", + "type": "string", + "const": "core:webview:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`" + }, + { + "description": "Enables the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-clear-all-browsing-data", + "markdownDescription": "Enables the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Enables the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview", + "markdownDescription": "Enables the create_webview command without any pre-configured scope." + }, + { + "description": "Enables the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview-window", + "markdownDescription": "Enables the create_webview_window command without any pre-configured scope." + }, + { + "description": "Enables the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-get-all-webviews", + "markdownDescription": "Enables the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-internal-toggle-devtools", + "markdownDescription": "Enables the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Enables the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-print", + "markdownDescription": "Enables the print command without any pre-configured scope." + }, + { + "description": "Enables the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-reparent", + "markdownDescription": "Enables the reparent command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-auto-resize", + "markdownDescription": "Enables the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-background-color", + "markdownDescription": "Enables the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-focus", + "markdownDescription": "Enables the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-position", + "markdownDescription": "Enables the set_webview_position command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-size", + "markdownDescription": "Enables the set_webview_size command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-zoom", + "markdownDescription": "Enables the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Enables the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-close", + "markdownDescription": "Enables the webview_close command without any pre-configured scope." + }, + { + "description": "Enables the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-hide", + "markdownDescription": "Enables the webview_hide command without any pre-configured scope." + }, + { + "description": "Enables the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-position", + "markdownDescription": "Enables the webview_position command without any pre-configured scope." + }, + { + "description": "Enables the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-show", + "markdownDescription": "Enables the webview_show command without any pre-configured scope." + }, + { + "description": "Enables the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-size", + "markdownDescription": "Enables the webview_size command without any pre-configured scope." + }, + { + "description": "Denies the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-clear-all-browsing-data", + "markdownDescription": "Denies the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Denies the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview", + "markdownDescription": "Denies the create_webview command without any pre-configured scope." + }, + { + "description": "Denies the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview-window", + "markdownDescription": "Denies the create_webview_window command without any pre-configured scope." + }, + { + "description": "Denies the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-get-all-webviews", + "markdownDescription": "Denies the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-internal-toggle-devtools", + "markdownDescription": "Denies the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Denies the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-print", + "markdownDescription": "Denies the print command without any pre-configured scope." + }, + { + "description": "Denies the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-reparent", + "markdownDescription": "Denies the reparent command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-auto-resize", + "markdownDescription": "Denies the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-background-color", + "markdownDescription": "Denies the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-focus", + "markdownDescription": "Denies the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-position", + "markdownDescription": "Denies the set_webview_position command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-size", + "markdownDescription": "Denies the set_webview_size command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-zoom", + "markdownDescription": "Denies the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Denies the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-close", + "markdownDescription": "Denies the webview_close command without any pre-configured scope." + }, + { + "description": "Denies the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-hide", + "markdownDescription": "Denies the webview_hide command without any pre-configured scope." + }, + { + "description": "Denies the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-position", + "markdownDescription": "Denies the webview_position command without any pre-configured scope." + }, + { + "description": "Denies the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-show", + "markdownDescription": "Denies the webview_show command without any pre-configured scope." + }, + { + "description": "Denies the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-size", + "markdownDescription": "Denies the webview_size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-activity-name`\n- `allow-scene-identifier`\n- `allow-internal-toggle-maximize`", + "type": "string", + "const": "core:window:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-activity-name`\n- `allow-scene-identifier`\n- `allow-internal-toggle-maximize`" + }, + { + "description": "Enables the activity_name command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-activity-name", + "markdownDescription": "Enables the activity_name command without any pre-configured scope." + }, + { + "description": "Enables the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-available-monitors", + "markdownDescription": "Enables the available_monitors command without any pre-configured scope." + }, + { + "description": "Enables the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-center", + "markdownDescription": "Enables the center command without any pre-configured scope." + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-current-monitor", + "markdownDescription": "Enables the current_monitor command without any pre-configured scope." + }, + { + "description": "Enables the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-cursor-position", + "markdownDescription": "Enables the cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-destroy", + "markdownDescription": "Enables the destroy command without any pre-configured scope." + }, + { + "description": "Enables the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-get-all-windows", + "markdownDescription": "Enables the get_all_windows command without any pre-configured scope." + }, + { + "description": "Enables the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-hide", + "markdownDescription": "Enables the hide command without any pre-configured scope." + }, + { + "description": "Enables the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-position", + "markdownDescription": "Enables the inner_position command without any pre-configured scope." + }, + { + "description": "Enables the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-size", + "markdownDescription": "Enables the inner_size command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-internal-toggle-maximize", + "markdownDescription": "Enables the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-always-on-top", + "markdownDescription": "Enables the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-closable", + "markdownDescription": "Enables the is_closable command without any pre-configured scope." + }, + { + "description": "Enables the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-decorated", + "markdownDescription": "Enables the is_decorated command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-focused", + "markdownDescription": "Enables the is_focused command without any pre-configured scope." + }, + { + "description": "Enables the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-fullscreen", + "markdownDescription": "Enables the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximizable", + "markdownDescription": "Enables the is_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximized", + "markdownDescription": "Enables the is_maximized command without any pre-configured scope." + }, + { + "description": "Enables the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimizable", + "markdownDescription": "Enables the is_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimized", + "markdownDescription": "Enables the is_minimized command without any pre-configured scope." + }, + { + "description": "Enables the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-resizable", + "markdownDescription": "Enables the is_resizable command without any pre-configured scope." + }, + { + "description": "Enables the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-visible", + "markdownDescription": "Enables the is_visible command without any pre-configured scope." + }, + { + "description": "Enables the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-maximize", + "markdownDescription": "Enables the maximize command without any pre-configured scope." + }, + { + "description": "Enables the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-minimize", + "markdownDescription": "Enables the minimize command without any pre-configured scope." + }, + { + "description": "Enables the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-monitor-from-point", + "markdownDescription": "Enables the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Enables the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-position", + "markdownDescription": "Enables the outer_position command without any pre-configured scope." + }, + { + "description": "Enables the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-size", + "markdownDescription": "Enables the outer_size command without any pre-configured scope." + }, + { + "description": "Enables the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-primary-monitor", + "markdownDescription": "Enables the primary_monitor command without any pre-configured scope." + }, + { + "description": "Enables the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-request-user-attention", + "markdownDescription": "Enables the request_user_attention command without any pre-configured scope." + }, + { + "description": "Enables the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-scale-factor", + "markdownDescription": "Enables the scale_factor command without any pre-configured scope." + }, + { + "description": "Enables the scene_identifier command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-scene-identifier", + "markdownDescription": "Enables the scene_identifier command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-bottom", + "markdownDescription": "Enables the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-top", + "markdownDescription": "Enables the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-background-color", + "markdownDescription": "Enables the set_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-count", + "markdownDescription": "Enables the set_badge_count command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-label", + "markdownDescription": "Enables the set_badge_label command without any pre-configured scope." + }, + { + "description": "Enables the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-closable", + "markdownDescription": "Enables the set_closable command without any pre-configured scope." + }, + { + "description": "Enables the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-content-protected", + "markdownDescription": "Enables the set_content_protected command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-grab", + "markdownDescription": "Enables the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-icon", + "markdownDescription": "Enables the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-position", + "markdownDescription": "Enables the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-visible", + "markdownDescription": "Enables the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Enables the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-decorations", + "markdownDescription": "Enables the set_decorations command without any pre-configured scope." + }, + { + "description": "Enables the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-effects", + "markdownDescription": "Enables the set_effects command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focus", + "markdownDescription": "Enables the set_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focusable", + "markdownDescription": "Enables the set_focusable command without any pre-configured scope." + }, + { + "description": "Enables the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-fullscreen", + "markdownDescription": "Enables the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-ignore-cursor-events", + "markdownDescription": "Enables the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Enables the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-max-size", + "markdownDescription": "Enables the set_max_size command without any pre-configured scope." + }, + { + "description": "Enables the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-maximizable", + "markdownDescription": "Enables the set_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-min-size", + "markdownDescription": "Enables the set_min_size command without any pre-configured scope." + }, + { + "description": "Enables the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-minimizable", + "markdownDescription": "Enables the set_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-overlay-icon", + "markdownDescription": "Enables the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-position", + "markdownDescription": "Enables the set_position command without any pre-configured scope." + }, + { + "description": "Enables the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-progress-bar", + "markdownDescription": "Enables the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Enables the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-resizable", + "markdownDescription": "Enables the set_resizable command without any pre-configured scope." + }, + { + "description": "Enables the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-shadow", + "markdownDescription": "Enables the set_shadow command without any pre-configured scope." + }, + { + "description": "Enables the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-simple-fullscreen", + "markdownDescription": "Enables the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size", + "markdownDescription": "Enables the set_size command without any pre-configured scope." + }, + { + "description": "Enables the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size-constraints", + "markdownDescription": "Enables the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Enables the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-skip-taskbar", + "markdownDescription": "Enables the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Enables the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-theme", + "markdownDescription": "Enables the set_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title-bar-style", + "markdownDescription": "Enables the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Enables the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-visible-on-all-workspaces", + "markdownDescription": "Enables the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Enables the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-show", + "markdownDescription": "Enables the show command without any pre-configured scope." + }, + { + "description": "Enables the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-dragging", + "markdownDescription": "Enables the start_dragging command without any pre-configured scope." + }, + { + "description": "Enables the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-resize-dragging", + "markdownDescription": "Enables the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Enables the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-theme", + "markdownDescription": "Enables the theme command without any pre-configured scope." + }, + { + "description": "Enables the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-title", + "markdownDescription": "Enables the title command without any pre-configured scope." + }, + { + "description": "Enables the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-toggle-maximize", + "markdownDescription": "Enables the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unmaximize", + "markdownDescription": "Enables the unmaximize command without any pre-configured scope." + }, + { + "description": "Enables the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unminimize", + "markdownDescription": "Enables the unminimize command without any pre-configured scope." + }, + { + "description": "Denies the activity_name command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-activity-name", + "markdownDescription": "Denies the activity_name command without any pre-configured scope." + }, + { + "description": "Denies the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-available-monitors", + "markdownDescription": "Denies the available_monitors command without any pre-configured scope." + }, + { + "description": "Denies the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-center", + "markdownDescription": "Denies the center command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-current-monitor", + "markdownDescription": "Denies the current_monitor command without any pre-configured scope." + }, + { + "description": "Denies the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-cursor-position", + "markdownDescription": "Denies the cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-destroy", + "markdownDescription": "Denies the destroy command without any pre-configured scope." + }, + { + "description": "Denies the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-get-all-windows", + "markdownDescription": "Denies the get_all_windows command without any pre-configured scope." + }, + { + "description": "Denies the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-hide", + "markdownDescription": "Denies the hide command without any pre-configured scope." + }, + { + "description": "Denies the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-position", + "markdownDescription": "Denies the inner_position command without any pre-configured scope." + }, + { + "description": "Denies the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-size", + "markdownDescription": "Denies the inner_size command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-internal-toggle-maximize", + "markdownDescription": "Denies the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-always-on-top", + "markdownDescription": "Denies the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-closable", + "markdownDescription": "Denies the is_closable command without any pre-configured scope." + }, + { + "description": "Denies the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-decorated", + "markdownDescription": "Denies the is_decorated command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-focused", + "markdownDescription": "Denies the is_focused command without any pre-configured scope." + }, + { + "description": "Denies the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-fullscreen", + "markdownDescription": "Denies the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximizable", + "markdownDescription": "Denies the is_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximized", + "markdownDescription": "Denies the is_maximized command without any pre-configured scope." + }, + { + "description": "Denies the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimizable", + "markdownDescription": "Denies the is_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimized", + "markdownDescription": "Denies the is_minimized command without any pre-configured scope." + }, + { + "description": "Denies the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-resizable", + "markdownDescription": "Denies the is_resizable command without any pre-configured scope." + }, + { + "description": "Denies the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-visible", + "markdownDescription": "Denies the is_visible command without any pre-configured scope." + }, + { + "description": "Denies the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-maximize", + "markdownDescription": "Denies the maximize command without any pre-configured scope." + }, + { + "description": "Denies the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-minimize", + "markdownDescription": "Denies the minimize command without any pre-configured scope." + }, + { + "description": "Denies the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-monitor-from-point", + "markdownDescription": "Denies the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Denies the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-position", + "markdownDescription": "Denies the outer_position command without any pre-configured scope." + }, + { + "description": "Denies the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-size", + "markdownDescription": "Denies the outer_size command without any pre-configured scope." + }, + { + "description": "Denies the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-primary-monitor", + "markdownDescription": "Denies the primary_monitor command without any pre-configured scope." + }, + { + "description": "Denies the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-request-user-attention", + "markdownDescription": "Denies the request_user_attention command without any pre-configured scope." + }, + { + "description": "Denies the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-scale-factor", + "markdownDescription": "Denies the scale_factor command without any pre-configured scope." + }, + { + "description": "Denies the scene_identifier command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-scene-identifier", + "markdownDescription": "Denies the scene_identifier command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-bottom", + "markdownDescription": "Denies the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-top", + "markdownDescription": "Denies the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-background-color", + "markdownDescription": "Denies the set_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-count", + "markdownDescription": "Denies the set_badge_count command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-label", + "markdownDescription": "Denies the set_badge_label command without any pre-configured scope." + }, + { + "description": "Denies the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-closable", + "markdownDescription": "Denies the set_closable command without any pre-configured scope." + }, + { + "description": "Denies the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-content-protected", + "markdownDescription": "Denies the set_content_protected command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-grab", + "markdownDescription": "Denies the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-icon", + "markdownDescription": "Denies the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-position", + "markdownDescription": "Denies the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-visible", + "markdownDescription": "Denies the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Denies the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-decorations", + "markdownDescription": "Denies the set_decorations command without any pre-configured scope." + }, + { + "description": "Denies the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-effects", + "markdownDescription": "Denies the set_effects command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focus", + "markdownDescription": "Denies the set_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focusable", + "markdownDescription": "Denies the set_focusable command without any pre-configured scope." + }, + { + "description": "Denies the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-fullscreen", + "markdownDescription": "Denies the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-ignore-cursor-events", + "markdownDescription": "Denies the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Denies the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-max-size", + "markdownDescription": "Denies the set_max_size command without any pre-configured scope." + }, + { + "description": "Denies the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-maximizable", + "markdownDescription": "Denies the set_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-min-size", + "markdownDescription": "Denies the set_min_size command without any pre-configured scope." + }, + { + "description": "Denies the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-minimizable", + "markdownDescription": "Denies the set_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-overlay-icon", + "markdownDescription": "Denies the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-position", + "markdownDescription": "Denies the set_position command without any pre-configured scope." + }, + { + "description": "Denies the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-progress-bar", + "markdownDescription": "Denies the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Denies the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-resizable", + "markdownDescription": "Denies the set_resizable command without any pre-configured scope." + }, + { + "description": "Denies the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-shadow", + "markdownDescription": "Denies the set_shadow command without any pre-configured scope." + }, + { + "description": "Denies the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-simple-fullscreen", + "markdownDescription": "Denies the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size", + "markdownDescription": "Denies the set_size command without any pre-configured scope." + }, + { + "description": "Denies the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size-constraints", + "markdownDescription": "Denies the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Denies the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-skip-taskbar", + "markdownDescription": "Denies the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Denies the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-theme", + "markdownDescription": "Denies the set_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title-bar-style", + "markdownDescription": "Denies the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Denies the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-visible-on-all-workspaces", + "markdownDescription": "Denies the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Denies the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-show", + "markdownDescription": "Denies the show command without any pre-configured scope." + }, + { + "description": "Denies the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-dragging", + "markdownDescription": "Denies the start_dragging command without any pre-configured scope." + }, + { + "description": "Denies the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-resize-dragging", + "markdownDescription": "Denies the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Denies the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-theme", + "markdownDescription": "Denies the theme command without any pre-configured scope." + }, + { + "description": "Denies the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-title", + "markdownDescription": "Denies the title command without any pre-configured scope." + }, + { + "description": "Denies the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-toggle-maximize", + "markdownDescription": "Denies the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unmaximize", + "markdownDescription": "Denies the unmaximize command without any pre-configured scope." + }, + { + "description": "Denies the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unminimize", + "markdownDescription": "Denies the unminimize command without any pre-configured scope." + }, + { + "description": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`", + "type": "string", + "const": "dialog:default", + "markdownDescription": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`" + }, + { + "description": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-ask", + "markdownDescription": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-confirm", + "markdownDescription": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-message", + "markdownDescription": "Enables the message command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-save", + "markdownDescription": "Enables the save command without any pre-configured scope." + }, + { + "description": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-ask", + "markdownDescription": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-confirm", + "markdownDescription": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-message", + "markdownDescription": "Denies the message command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-save", + "markdownDescription": "Denies the save command without any pre-configured scope." + }, + { + "description": "No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n", + "type": "string", + "const": "global-shortcut:default", + "markdownDescription": "No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n" + }, + { + "description": "Enables the is_registered command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-is-registered", + "markdownDescription": "Enables the is_registered command without any pre-configured scope." + }, + { + "description": "Enables the register command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-register", + "markdownDescription": "Enables the register command without any pre-configured scope." + }, + { + "description": "Enables the register_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-register-all", + "markdownDescription": "Enables the register_all command without any pre-configured scope." + }, + { + "description": "Enables the unregister command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-unregister", + "markdownDescription": "Enables the unregister command without any pre-configured scope." + }, + { + "description": "Enables the unregister_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-unregister-all", + "markdownDescription": "Enables the unregister_all command without any pre-configured scope." + }, + { + "description": "Denies the is_registered command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-is-registered", + "markdownDescription": "Denies the is_registered command without any pre-configured scope." + }, + { + "description": "Denies the register command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-register", + "markdownDescription": "Denies the register command without any pre-configured scope." + }, + { + "description": "Denies the register_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-register-all", + "markdownDescription": "Denies the register_all command without any pre-configured scope." + }, + { + "description": "Denies the unregister command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-unregister", + "markdownDescription": "Denies the unregister command without any pre-configured scope." + }, + { + "description": "Denies the unregister_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-unregister-all", + "markdownDescription": "Denies the unregister_all command without any pre-configured scope." + } + ] + }, + "Value": { + "description": "All supported ACL values.", + "anyOf": [ + { + "description": "Represents a null JSON value.", + "type": "null" + }, + { + "description": "Represents a [`bool`].", + "type": "boolean" + }, + { + "description": "Represents a valid ACL [`Number`].", + "allOf": [ + { + "$ref": "#/definitions/Number" + } + ] + }, + { + "description": "Represents a [`String`].", + "type": "string" + }, + { + "description": "Represents a list of other [`Value`]s.", + "type": "array", + "items": { + "$ref": "#/definitions/Value" + } + }, + { + "description": "Represents a map of [`String`] keys to [`Value`]s.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Value" + } + } + ] + }, + "Number": { + "description": "A valid ACL number.", + "anyOf": [ + { + "description": "Represents an [`i64`].", + "type": "integer", + "format": "int64" + }, + { + "description": "Represents a [`f64`].", + "type": "number", + "format": "double" + } + ] + }, + "Target": { + "description": "Platform target.", + "oneOf": [ + { + "description": "MacOS.", + "type": "string", + "enum": [ + "macOS" + ] + }, + { + "description": "Windows.", + "type": "string", + "enum": [ + "windows" + ] + }, + { + "description": "Linux.", + "type": "string", + "enum": [ + "linux" + ] + }, + { + "description": "Android.", + "type": "string", + "enum": [ + "android" + ] + }, + { + "description": "iOS.", + "type": "string", + "enum": [ + "iOS" + ] + } + ] + } + } +} \ No newline at end of file diff --git a/src-tauri/gen/schemas/windows-schema.json b/src-tauri/gen/schemas/windows-schema.json new file mode 100644 index 0000000..f1da633 --- /dev/null +++ b/src-tauri/gen/schemas/windows-schema.json @@ -0,0 +1,2544 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "CapabilityFile", + "description": "Capability formats accepted in a capability file.", + "anyOf": [ + { + "description": "A single capability.", + "allOf": [ + { + "$ref": "#/definitions/Capability" + } + ] + }, + { + "description": "A list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + }, + { + "description": "A list of capabilities.", + "type": "object", + "required": [ + "capabilities" + ], + "properties": { + "capabilities": { + "description": "The list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + } + } + } + ], + "definitions": { + "Capability": { + "description": "A grouping and boundary mechanism developers can use to isolate access to the IPC layer.\n\nIt controls application windows' and webviews' fine grained access to the Tauri core, application, or plugin commands. If a webview or its window is not matching any capability then it has no access to the IPC layer at all.\n\nThis can be done to create groups of windows, based on their required system access, which can reduce impact of frontend vulnerabilities in less privileged windows. Windows can be added to a capability by exact name (e.g. `main-window`) or glob patterns like `*` or `admin-*`. A Window can have none, one, or multiple associated capabilities.\n\n## Example\n\n```json { \"identifier\": \"main-user-files-write\", \"description\": \"This capability allows the `main` window on macOS and Windows access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.\", \"windows\": [ \"main\" ], \"permissions\": [ \"core:default\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] }, ], \"platforms\": [\"macOS\",\"windows\"] } ```", + "type": "object", + "required": [ + "identifier", + "permissions" + ], + "properties": { + "identifier": { + "description": "Identifier of the capability.\n\n## Example\n\n`main-user-files-write`", + "type": "string" + }, + "description": { + "description": "Description of what the capability is intended to allow on associated windows.\n\nIt should contain a description of what the grouped permissions should allow.\n\n## Example\n\nThis capability allows the `main` window access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.", + "default": "", + "type": "string" + }, + "remote": { + "description": "Configure remote URLs that can use the capability permissions.\n\nThis setting is optional and defaults to not being set, as our default use case is that the content is served from our local application.\n\n:::caution Make sure you understand the security implications of providing remote sources with local system access. :::\n\n## Example\n\n```json { \"urls\": [\"https://*.mydomain.dev\"] } ```", + "anyOf": [ + { + "$ref": "#/definitions/CapabilityRemote" + }, + { + "type": "null" + } + ] + }, + "local": { + "description": "Whether this capability is enabled for local app URLs or not. Defaults to `true`.", + "default": true, + "type": "boolean" + }, + "windows": { + "description": "List of windows that are affected by this capability. Can be a glob pattern.\n\nIf a window label matches any of the patterns in this list, the capability will be enabled on all the webviews of that window, regardless of the value of [`Self::webviews`].\n\nOn multiwebview windows, prefer specifying [`Self::webviews`] and omitting [`Self::windows`] for a fine grained access control.\n\n## Example\n\n`[\"main\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "webviews": { + "description": "List of webviews that are affected by this capability. Can be a glob pattern.\n\nThe capability will be enabled on all the webviews whose label matches any of the patterns in this list, regardless of whether the webview's window label matches a pattern in [`Self::windows`].\n\n## Example\n\n`[\"sub-webview-one\", \"sub-webview-two\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "permissions": { + "description": "List of permissions attached to this capability.\n\nMust include the plugin name as prefix in the form of `${plugin-name}:${permission-name}`. For commands directly implemented in the application itself only `${permission-name}` is required.\n\n## Example\n\n```json [ \"core:default\", \"shell:allow-open\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] } ] ```", + "type": "array", + "items": { + "$ref": "#/definitions/PermissionEntry" + }, + "uniqueItems": true + }, + "platforms": { + "description": "Limit which target platforms this capability applies to.\n\nBy default all platforms are targeted.\n\n## Example\n\n`[\"macOS\",\"windows\"]`", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Target" + } + } + } + }, + "CapabilityRemote": { + "description": "Configuration for remote URLs that are associated with the capability.", + "type": "object", + "required": [ + "urls" + ], + "properties": { + "urls": { + "description": "Remote domains this capability refers to using the [URLPattern standard](https://urlpattern.spec.whatwg.org/).\n\n## Examples\n\n- \"https://*.mydomain.dev\": allows subdomains of mydomain.dev - \"https://mydomain.dev/api/*\": allows any subpath of mydomain.dev/api", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PermissionEntry": { + "description": "An entry for a permission value in a [`Capability`] can be either a raw permission [`Identifier`] or an object that references a permission and extends its scope.", + "anyOf": [ + { + "description": "Reference a permission or permission set by identifier.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + { + "description": "Reference a permission or permission set by identifier and extends its scope.", + "type": "object", + "allOf": [ + { + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + "allow": { + "description": "Data that defines what is allowed by the scope.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + }, + "deny": { + "description": "Data that defines what is denied by the scope. This should be prioritized by validation logic.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + } + } + } + ], + "required": [ + "identifier" + ] + } + ] + }, + "Identifier": { + "description": "Permission identifier", + "oneOf": [ + { + "description": "This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n\n#### This default permission set includes:\n\n- `allow-enable`\n- `allow-disable`\n- `allow-is-enabled`", + "type": "string", + "const": "autostart:default", + "markdownDescription": "This permission set configures if your\napplication can enable or disable auto\nstarting the application on boot.\n\n#### Granted Permissions\n\nIt allows all to check, enable and\ndisable the automatic start on boot.\n\n\n#### This default permission set includes:\n\n- `allow-enable`\n- `allow-disable`\n- `allow-is-enabled`" + }, + { + "description": "Enables the disable command without any pre-configured scope.", + "type": "string", + "const": "autostart:allow-disable", + "markdownDescription": "Enables the disable command without any pre-configured scope." + }, + { + "description": "Enables the enable command without any pre-configured scope.", + "type": "string", + "const": "autostart:allow-enable", + "markdownDescription": "Enables the enable command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "autostart:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the disable command without any pre-configured scope.", + "type": "string", + "const": "autostart:deny-disable", + "markdownDescription": "Denies the disable command without any pre-configured scope." + }, + { + "description": "Denies the enable command without any pre-configured scope.", + "type": "string", + "const": "autostart:deny-enable", + "markdownDescription": "Denies the enable command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "autostart:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n", + "type": "string", + "const": "clipboard-manager:default", + "markdownDescription": "No features are enabled by default, as we believe\nthe clipboard can be inherently dangerous and it is \napplication specific if read and/or write access is needed.\n\nClipboard interaction needs to be explicitly enabled.\n" + }, + { + "description": "Enables the clear command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-clear", + "markdownDescription": "Enables the clear command without any pre-configured scope." + }, + { + "description": "Enables the read_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-read-image", + "markdownDescription": "Enables the read_image command without any pre-configured scope." + }, + { + "description": "Enables the read_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-read-text", + "markdownDescription": "Enables the read_text command without any pre-configured scope." + }, + { + "description": "Enables the write_html command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-write-html", + "markdownDescription": "Enables the write_html command without any pre-configured scope." + }, + { + "description": "Enables the write_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-write-image", + "markdownDescription": "Enables the write_image command without any pre-configured scope." + }, + { + "description": "Enables the write_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:allow-write-text", + "markdownDescription": "Enables the write_text command without any pre-configured scope." + }, + { + "description": "Denies the clear command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-clear", + "markdownDescription": "Denies the clear command without any pre-configured scope." + }, + { + "description": "Denies the read_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-read-image", + "markdownDescription": "Denies the read_image command without any pre-configured scope." + }, + { + "description": "Denies the read_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-read-text", + "markdownDescription": "Denies the read_text command without any pre-configured scope." + }, + { + "description": "Denies the write_html command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-write-html", + "markdownDescription": "Denies the write_html command without any pre-configured scope." + }, + { + "description": "Denies the write_image command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-write-image", + "markdownDescription": "Denies the write_image command without any pre-configured scope." + }, + { + "description": "Denies the write_text command without any pre-configured scope.", + "type": "string", + "const": "clipboard-manager:deny-write-text", + "markdownDescription": "Denies the write_text command without any pre-configured scope." + }, + { + "description": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`", + "type": "string", + "const": "core:default", + "markdownDescription": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`" + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`\n- `allow-supports-multiple-windows`", + "type": "string", + "const": "core:app:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`\n- `allow-supports-multiple-windows`" + }, + { + "description": "Enables the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-hide", + "markdownDescription": "Enables the app_hide command without any pre-configured scope." + }, + { + "description": "Enables the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-show", + "markdownDescription": "Enables the app_show command without any pre-configured scope." + }, + { + "description": "Enables the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-bundle-type", + "markdownDescription": "Enables the bundle_type command without any pre-configured scope." + }, + { + "description": "Enables the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-default-window-icon", + "markdownDescription": "Enables the default_window_icon command without any pre-configured scope." + }, + { + "description": "Enables the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-fetch-data-store-identifiers", + "markdownDescription": "Enables the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Enables the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-identifier", + "markdownDescription": "Enables the identifier command without any pre-configured scope." + }, + { + "description": "Enables the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-name", + "markdownDescription": "Enables the name command without any pre-configured scope." + }, + { + "description": "Enables the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-register-listener", + "markdownDescription": "Enables the register_listener command without any pre-configured scope." + }, + { + "description": "Enables the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-data-store", + "markdownDescription": "Enables the remove_data_store command without any pre-configured scope." + }, + { + "description": "Enables the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-listener", + "markdownDescription": "Enables the remove_listener command without any pre-configured scope." + }, + { + "description": "Enables the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-app-theme", + "markdownDescription": "Enables the set_app_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-dock-visibility", + "markdownDescription": "Enables the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Enables the supports_multiple_windows command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-supports-multiple-windows", + "markdownDescription": "Enables the supports_multiple_windows command without any pre-configured scope." + }, + { + "description": "Enables the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-tauri-version", + "markdownDescription": "Enables the tauri_version command without any pre-configured scope." + }, + { + "description": "Enables the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-version", + "markdownDescription": "Enables the version command without any pre-configured scope." + }, + { + "description": "Denies the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-hide", + "markdownDescription": "Denies the app_hide command without any pre-configured scope." + }, + { + "description": "Denies the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-show", + "markdownDescription": "Denies the app_show command without any pre-configured scope." + }, + { + "description": "Denies the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-bundle-type", + "markdownDescription": "Denies the bundle_type command without any pre-configured scope." + }, + { + "description": "Denies the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-default-window-icon", + "markdownDescription": "Denies the default_window_icon command without any pre-configured scope." + }, + { + "description": "Denies the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-fetch-data-store-identifiers", + "markdownDescription": "Denies the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Denies the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-identifier", + "markdownDescription": "Denies the identifier command without any pre-configured scope." + }, + { + "description": "Denies the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-name", + "markdownDescription": "Denies the name command without any pre-configured scope." + }, + { + "description": "Denies the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-register-listener", + "markdownDescription": "Denies the register_listener command without any pre-configured scope." + }, + { + "description": "Denies the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-data-store", + "markdownDescription": "Denies the remove_data_store command without any pre-configured scope." + }, + { + "description": "Denies the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-listener", + "markdownDescription": "Denies the remove_listener command without any pre-configured scope." + }, + { + "description": "Denies the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-app-theme", + "markdownDescription": "Denies the set_app_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-dock-visibility", + "markdownDescription": "Denies the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Denies the supports_multiple_windows command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-supports-multiple-windows", + "markdownDescription": "Denies the supports_multiple_windows command without any pre-configured scope." + }, + { + "description": "Denies the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-tauri-version", + "markdownDescription": "Denies the tauri_version command without any pre-configured scope." + }, + { + "description": "Denies the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-version", + "markdownDescription": "Denies the version command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`", + "type": "string", + "const": "core:event:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`" + }, + { + "description": "Enables the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit", + "markdownDescription": "Enables the emit command without any pre-configured scope." + }, + { + "description": "Enables the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit-to", + "markdownDescription": "Enables the emit_to command without any pre-configured scope." + }, + { + "description": "Enables the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-listen", + "markdownDescription": "Enables the listen command without any pre-configured scope." + }, + { + "description": "Enables the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-unlisten", + "markdownDescription": "Enables the unlisten command without any pre-configured scope." + }, + { + "description": "Denies the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit", + "markdownDescription": "Denies the emit command without any pre-configured scope." + }, + { + "description": "Denies the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit-to", + "markdownDescription": "Denies the emit_to command without any pre-configured scope." + }, + { + "description": "Denies the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-listen", + "markdownDescription": "Denies the listen command without any pre-configured scope." + }, + { + "description": "Denies the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-unlisten", + "markdownDescription": "Denies the unlisten command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`", + "type": "string", + "const": "core:image:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`" + }, + { + "description": "Enables the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-bytes", + "markdownDescription": "Enables the from_bytes command without any pre-configured scope." + }, + { + "description": "Enables the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-path", + "markdownDescription": "Enables the from_path command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-rgba", + "markdownDescription": "Enables the rgba command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Denies the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-bytes", + "markdownDescription": "Denies the from_bytes command without any pre-configured scope." + }, + { + "description": "Denies the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-path", + "markdownDescription": "Denies the from_path command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-rgba", + "markdownDescription": "Denies the rgba command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`", + "type": "string", + "const": "core:menu:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`" + }, + { + "description": "Enables the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-append", + "markdownDescription": "Enables the append command without any pre-configured scope." + }, + { + "description": "Enables the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-create-default", + "markdownDescription": "Enables the create_default command without any pre-configured scope." + }, + { + "description": "Enables the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-get", + "markdownDescription": "Enables the get command without any pre-configured scope." + }, + { + "description": "Enables the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-insert", + "markdownDescription": "Enables the insert command without any pre-configured scope." + }, + { + "description": "Enables the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-checked", + "markdownDescription": "Enables the is_checked command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-items", + "markdownDescription": "Enables the items command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-popup", + "markdownDescription": "Enables the popup command without any pre-configured scope." + }, + { + "description": "Enables the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-prepend", + "markdownDescription": "Enables the prepend command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove-at", + "markdownDescription": "Enables the remove_at command without any pre-configured scope." + }, + { + "description": "Enables the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-accelerator", + "markdownDescription": "Enables the set_accelerator command without any pre-configured scope." + }, + { + "description": "Enables the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-app-menu", + "markdownDescription": "Enables the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-help-menu-for-nsapp", + "markdownDescription": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-window-menu", + "markdownDescription": "Enables the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-windows-menu-for-nsapp", + "markdownDescription": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-checked", + "markdownDescription": "Enables the set_checked command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-text", + "markdownDescription": "Enables the set_text command without any pre-configured scope." + }, + { + "description": "Enables the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-text", + "markdownDescription": "Enables the text command without any pre-configured scope." + }, + { + "description": "Denies the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-append", + "markdownDescription": "Denies the append command without any pre-configured scope." + }, + { + "description": "Denies the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-create-default", + "markdownDescription": "Denies the create_default command without any pre-configured scope." + }, + { + "description": "Denies the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-get", + "markdownDescription": "Denies the get command without any pre-configured scope." + }, + { + "description": "Denies the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-insert", + "markdownDescription": "Denies the insert command without any pre-configured scope." + }, + { + "description": "Denies the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-checked", + "markdownDescription": "Denies the is_checked command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-items", + "markdownDescription": "Denies the items command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-popup", + "markdownDescription": "Denies the popup command without any pre-configured scope." + }, + { + "description": "Denies the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-prepend", + "markdownDescription": "Denies the prepend command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove-at", + "markdownDescription": "Denies the remove_at command without any pre-configured scope." + }, + { + "description": "Denies the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-accelerator", + "markdownDescription": "Denies the set_accelerator command without any pre-configured scope." + }, + { + "description": "Denies the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-app-menu", + "markdownDescription": "Denies the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-help-menu-for-nsapp", + "markdownDescription": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-window-menu", + "markdownDescription": "Denies the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-windows-menu-for-nsapp", + "markdownDescription": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-checked", + "markdownDescription": "Denies the set_checked command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-text", + "markdownDescription": "Denies the set_text command without any pre-configured scope." + }, + { + "description": "Denies the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-text", + "markdownDescription": "Denies the text command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`", + "type": "string", + "const": "core:path:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`" + }, + { + "description": "Enables the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-basename", + "markdownDescription": "Enables the basename command without any pre-configured scope." + }, + { + "description": "Enables the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-dirname", + "markdownDescription": "Enables the dirname command without any pre-configured scope." + }, + { + "description": "Enables the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-extname", + "markdownDescription": "Enables the extname command without any pre-configured scope." + }, + { + "description": "Enables the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-is-absolute", + "markdownDescription": "Enables the is_absolute command without any pre-configured scope." + }, + { + "description": "Enables the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-join", + "markdownDescription": "Enables the join command without any pre-configured scope." + }, + { + "description": "Enables the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-normalize", + "markdownDescription": "Enables the normalize command without any pre-configured scope." + }, + { + "description": "Enables the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve", + "markdownDescription": "Enables the resolve command without any pre-configured scope." + }, + { + "description": "Enables the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve-directory", + "markdownDescription": "Enables the resolve_directory command without any pre-configured scope." + }, + { + "description": "Denies the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-basename", + "markdownDescription": "Denies the basename command without any pre-configured scope." + }, + { + "description": "Denies the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-dirname", + "markdownDescription": "Denies the dirname command without any pre-configured scope." + }, + { + "description": "Denies the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-extname", + "markdownDescription": "Denies the extname command without any pre-configured scope." + }, + { + "description": "Denies the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-is-absolute", + "markdownDescription": "Denies the is_absolute command without any pre-configured scope." + }, + { + "description": "Denies the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-join", + "markdownDescription": "Denies the join command without any pre-configured scope." + }, + { + "description": "Denies the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-normalize", + "markdownDescription": "Denies the normalize command without any pre-configured scope." + }, + { + "description": "Denies the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve", + "markdownDescription": "Denies the resolve command without any pre-configured scope." + }, + { + "description": "Denies the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve-directory", + "markdownDescription": "Denies the resolve_directory command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`", + "type": "string", + "const": "core:resources:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`" + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-icon-with-as-template`\n- `allow-set-show-menu-on-left-click`", + "type": "string", + "const": "core:tray:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-icon-with-as-template`\n- `allow-set-show-menu-on-left-click`" + }, + { + "description": "Enables the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-get-by-id", + "markdownDescription": "Enables the get_by_id command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-remove-by-id", + "markdownDescription": "Enables the remove_by_id command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon-as-template", + "markdownDescription": "Enables the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Enables the set_icon_with_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon-with-as-template", + "markdownDescription": "Enables the set_icon_with_as_template command without any pre-configured scope." + }, + { + "description": "Enables the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-menu", + "markdownDescription": "Enables the set_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-show-menu-on-left-click", + "markdownDescription": "Enables the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Enables the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-temp-dir-path", + "markdownDescription": "Enables the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-tooltip", + "markdownDescription": "Enables the set_tooltip command without any pre-configured scope." + }, + { + "description": "Enables the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-visible", + "markdownDescription": "Enables the set_visible command without any pre-configured scope." + }, + { + "description": "Denies the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-get-by-id", + "markdownDescription": "Denies the get_by_id command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-remove-by-id", + "markdownDescription": "Denies the remove_by_id command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon-as-template", + "markdownDescription": "Denies the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Denies the set_icon_with_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon-with-as-template", + "markdownDescription": "Denies the set_icon_with_as_template command without any pre-configured scope." + }, + { + "description": "Denies the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-menu", + "markdownDescription": "Denies the set_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-show-menu-on-left-click", + "markdownDescription": "Denies the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Denies the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-temp-dir-path", + "markdownDescription": "Denies the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-tooltip", + "markdownDescription": "Denies the set_tooltip command without any pre-configured scope." + }, + { + "description": "Denies the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-visible", + "markdownDescription": "Denies the set_visible command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`", + "type": "string", + "const": "core:webview:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`" + }, + { + "description": "Enables the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-clear-all-browsing-data", + "markdownDescription": "Enables the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Enables the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview", + "markdownDescription": "Enables the create_webview command without any pre-configured scope." + }, + { + "description": "Enables the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview-window", + "markdownDescription": "Enables the create_webview_window command without any pre-configured scope." + }, + { + "description": "Enables the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-get-all-webviews", + "markdownDescription": "Enables the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-internal-toggle-devtools", + "markdownDescription": "Enables the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Enables the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-print", + "markdownDescription": "Enables the print command without any pre-configured scope." + }, + { + "description": "Enables the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-reparent", + "markdownDescription": "Enables the reparent command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-auto-resize", + "markdownDescription": "Enables the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-background-color", + "markdownDescription": "Enables the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-focus", + "markdownDescription": "Enables the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-position", + "markdownDescription": "Enables the set_webview_position command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-size", + "markdownDescription": "Enables the set_webview_size command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-zoom", + "markdownDescription": "Enables the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Enables the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-close", + "markdownDescription": "Enables the webview_close command without any pre-configured scope." + }, + { + "description": "Enables the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-hide", + "markdownDescription": "Enables the webview_hide command without any pre-configured scope." + }, + { + "description": "Enables the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-position", + "markdownDescription": "Enables the webview_position command without any pre-configured scope." + }, + { + "description": "Enables the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-show", + "markdownDescription": "Enables the webview_show command without any pre-configured scope." + }, + { + "description": "Enables the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-size", + "markdownDescription": "Enables the webview_size command without any pre-configured scope." + }, + { + "description": "Denies the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-clear-all-browsing-data", + "markdownDescription": "Denies the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Denies the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview", + "markdownDescription": "Denies the create_webview command without any pre-configured scope." + }, + { + "description": "Denies the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview-window", + "markdownDescription": "Denies the create_webview_window command without any pre-configured scope." + }, + { + "description": "Denies the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-get-all-webviews", + "markdownDescription": "Denies the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-internal-toggle-devtools", + "markdownDescription": "Denies the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Denies the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-print", + "markdownDescription": "Denies the print command without any pre-configured scope." + }, + { + "description": "Denies the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-reparent", + "markdownDescription": "Denies the reparent command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-auto-resize", + "markdownDescription": "Denies the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-background-color", + "markdownDescription": "Denies the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-focus", + "markdownDescription": "Denies the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-position", + "markdownDescription": "Denies the set_webview_position command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-size", + "markdownDescription": "Denies the set_webview_size command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-zoom", + "markdownDescription": "Denies the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Denies the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-close", + "markdownDescription": "Denies the webview_close command without any pre-configured scope." + }, + { + "description": "Denies the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-hide", + "markdownDescription": "Denies the webview_hide command without any pre-configured scope." + }, + { + "description": "Denies the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-position", + "markdownDescription": "Denies the webview_position command without any pre-configured scope." + }, + { + "description": "Denies the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-show", + "markdownDescription": "Denies the webview_show command without any pre-configured scope." + }, + { + "description": "Denies the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-size", + "markdownDescription": "Denies the webview_size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-activity-name`\n- `allow-scene-identifier`\n- `allow-internal-toggle-maximize`", + "type": "string", + "const": "core:window:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-activity-name`\n- `allow-scene-identifier`\n- `allow-internal-toggle-maximize`" + }, + { + "description": "Enables the activity_name command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-activity-name", + "markdownDescription": "Enables the activity_name command without any pre-configured scope." + }, + { + "description": "Enables the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-available-monitors", + "markdownDescription": "Enables the available_monitors command without any pre-configured scope." + }, + { + "description": "Enables the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-center", + "markdownDescription": "Enables the center command without any pre-configured scope." + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-current-monitor", + "markdownDescription": "Enables the current_monitor command without any pre-configured scope." + }, + { + "description": "Enables the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-cursor-position", + "markdownDescription": "Enables the cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-destroy", + "markdownDescription": "Enables the destroy command without any pre-configured scope." + }, + { + "description": "Enables the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-get-all-windows", + "markdownDescription": "Enables the get_all_windows command without any pre-configured scope." + }, + { + "description": "Enables the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-hide", + "markdownDescription": "Enables the hide command without any pre-configured scope." + }, + { + "description": "Enables the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-position", + "markdownDescription": "Enables the inner_position command without any pre-configured scope." + }, + { + "description": "Enables the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-size", + "markdownDescription": "Enables the inner_size command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-internal-toggle-maximize", + "markdownDescription": "Enables the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-always-on-top", + "markdownDescription": "Enables the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-closable", + "markdownDescription": "Enables the is_closable command without any pre-configured scope." + }, + { + "description": "Enables the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-decorated", + "markdownDescription": "Enables the is_decorated command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-focused", + "markdownDescription": "Enables the is_focused command without any pre-configured scope." + }, + { + "description": "Enables the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-fullscreen", + "markdownDescription": "Enables the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximizable", + "markdownDescription": "Enables the is_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximized", + "markdownDescription": "Enables the is_maximized command without any pre-configured scope." + }, + { + "description": "Enables the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimizable", + "markdownDescription": "Enables the is_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimized", + "markdownDescription": "Enables the is_minimized command without any pre-configured scope." + }, + { + "description": "Enables the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-resizable", + "markdownDescription": "Enables the is_resizable command without any pre-configured scope." + }, + { + "description": "Enables the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-visible", + "markdownDescription": "Enables the is_visible command without any pre-configured scope." + }, + { + "description": "Enables the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-maximize", + "markdownDescription": "Enables the maximize command without any pre-configured scope." + }, + { + "description": "Enables the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-minimize", + "markdownDescription": "Enables the minimize command without any pre-configured scope." + }, + { + "description": "Enables the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-monitor-from-point", + "markdownDescription": "Enables the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Enables the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-position", + "markdownDescription": "Enables the outer_position command without any pre-configured scope." + }, + { + "description": "Enables the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-size", + "markdownDescription": "Enables the outer_size command without any pre-configured scope." + }, + { + "description": "Enables the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-primary-monitor", + "markdownDescription": "Enables the primary_monitor command without any pre-configured scope." + }, + { + "description": "Enables the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-request-user-attention", + "markdownDescription": "Enables the request_user_attention command without any pre-configured scope." + }, + { + "description": "Enables the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-scale-factor", + "markdownDescription": "Enables the scale_factor command without any pre-configured scope." + }, + { + "description": "Enables the scene_identifier command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-scene-identifier", + "markdownDescription": "Enables the scene_identifier command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-bottom", + "markdownDescription": "Enables the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-top", + "markdownDescription": "Enables the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-background-color", + "markdownDescription": "Enables the set_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-count", + "markdownDescription": "Enables the set_badge_count command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-label", + "markdownDescription": "Enables the set_badge_label command without any pre-configured scope." + }, + { + "description": "Enables the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-closable", + "markdownDescription": "Enables the set_closable command without any pre-configured scope." + }, + { + "description": "Enables the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-content-protected", + "markdownDescription": "Enables the set_content_protected command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-grab", + "markdownDescription": "Enables the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-icon", + "markdownDescription": "Enables the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-position", + "markdownDescription": "Enables the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-visible", + "markdownDescription": "Enables the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Enables the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-decorations", + "markdownDescription": "Enables the set_decorations command without any pre-configured scope." + }, + { + "description": "Enables the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-effects", + "markdownDescription": "Enables the set_effects command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focus", + "markdownDescription": "Enables the set_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focusable", + "markdownDescription": "Enables the set_focusable command without any pre-configured scope." + }, + { + "description": "Enables the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-fullscreen", + "markdownDescription": "Enables the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-ignore-cursor-events", + "markdownDescription": "Enables the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Enables the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-max-size", + "markdownDescription": "Enables the set_max_size command without any pre-configured scope." + }, + { + "description": "Enables the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-maximizable", + "markdownDescription": "Enables the set_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-min-size", + "markdownDescription": "Enables the set_min_size command without any pre-configured scope." + }, + { + "description": "Enables the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-minimizable", + "markdownDescription": "Enables the set_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-overlay-icon", + "markdownDescription": "Enables the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-position", + "markdownDescription": "Enables the set_position command without any pre-configured scope." + }, + { + "description": "Enables the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-progress-bar", + "markdownDescription": "Enables the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Enables the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-resizable", + "markdownDescription": "Enables the set_resizable command without any pre-configured scope." + }, + { + "description": "Enables the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-shadow", + "markdownDescription": "Enables the set_shadow command without any pre-configured scope." + }, + { + "description": "Enables the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-simple-fullscreen", + "markdownDescription": "Enables the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size", + "markdownDescription": "Enables the set_size command without any pre-configured scope." + }, + { + "description": "Enables the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size-constraints", + "markdownDescription": "Enables the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Enables the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-skip-taskbar", + "markdownDescription": "Enables the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Enables the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-theme", + "markdownDescription": "Enables the set_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title-bar-style", + "markdownDescription": "Enables the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Enables the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-visible-on-all-workspaces", + "markdownDescription": "Enables the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Enables the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-show", + "markdownDescription": "Enables the show command without any pre-configured scope." + }, + { + "description": "Enables the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-dragging", + "markdownDescription": "Enables the start_dragging command without any pre-configured scope." + }, + { + "description": "Enables the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-resize-dragging", + "markdownDescription": "Enables the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Enables the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-theme", + "markdownDescription": "Enables the theme command without any pre-configured scope." + }, + { + "description": "Enables the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-title", + "markdownDescription": "Enables the title command without any pre-configured scope." + }, + { + "description": "Enables the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-toggle-maximize", + "markdownDescription": "Enables the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unmaximize", + "markdownDescription": "Enables the unmaximize command without any pre-configured scope." + }, + { + "description": "Enables the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unminimize", + "markdownDescription": "Enables the unminimize command without any pre-configured scope." + }, + { + "description": "Denies the activity_name command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-activity-name", + "markdownDescription": "Denies the activity_name command without any pre-configured scope." + }, + { + "description": "Denies the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-available-monitors", + "markdownDescription": "Denies the available_monitors command without any pre-configured scope." + }, + { + "description": "Denies the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-center", + "markdownDescription": "Denies the center command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-current-monitor", + "markdownDescription": "Denies the current_monitor command without any pre-configured scope." + }, + { + "description": "Denies the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-cursor-position", + "markdownDescription": "Denies the cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-destroy", + "markdownDescription": "Denies the destroy command without any pre-configured scope." + }, + { + "description": "Denies the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-get-all-windows", + "markdownDescription": "Denies the get_all_windows command without any pre-configured scope." + }, + { + "description": "Denies the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-hide", + "markdownDescription": "Denies the hide command without any pre-configured scope." + }, + { + "description": "Denies the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-position", + "markdownDescription": "Denies the inner_position command without any pre-configured scope." + }, + { + "description": "Denies the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-size", + "markdownDescription": "Denies the inner_size command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-internal-toggle-maximize", + "markdownDescription": "Denies the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-always-on-top", + "markdownDescription": "Denies the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-closable", + "markdownDescription": "Denies the is_closable command without any pre-configured scope." + }, + { + "description": "Denies the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-decorated", + "markdownDescription": "Denies the is_decorated command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-focused", + "markdownDescription": "Denies the is_focused command without any pre-configured scope." + }, + { + "description": "Denies the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-fullscreen", + "markdownDescription": "Denies the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximizable", + "markdownDescription": "Denies the is_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximized", + "markdownDescription": "Denies the is_maximized command without any pre-configured scope." + }, + { + "description": "Denies the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimizable", + "markdownDescription": "Denies the is_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimized", + "markdownDescription": "Denies the is_minimized command without any pre-configured scope." + }, + { + "description": "Denies the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-resizable", + "markdownDescription": "Denies the is_resizable command without any pre-configured scope." + }, + { + "description": "Denies the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-visible", + "markdownDescription": "Denies the is_visible command without any pre-configured scope." + }, + { + "description": "Denies the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-maximize", + "markdownDescription": "Denies the maximize command without any pre-configured scope." + }, + { + "description": "Denies the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-minimize", + "markdownDescription": "Denies the minimize command without any pre-configured scope." + }, + { + "description": "Denies the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-monitor-from-point", + "markdownDescription": "Denies the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Denies the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-position", + "markdownDescription": "Denies the outer_position command without any pre-configured scope." + }, + { + "description": "Denies the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-size", + "markdownDescription": "Denies the outer_size command without any pre-configured scope." + }, + { + "description": "Denies the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-primary-monitor", + "markdownDescription": "Denies the primary_monitor command without any pre-configured scope." + }, + { + "description": "Denies the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-request-user-attention", + "markdownDescription": "Denies the request_user_attention command without any pre-configured scope." + }, + { + "description": "Denies the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-scale-factor", + "markdownDescription": "Denies the scale_factor command without any pre-configured scope." + }, + { + "description": "Denies the scene_identifier command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-scene-identifier", + "markdownDescription": "Denies the scene_identifier command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-bottom", + "markdownDescription": "Denies the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-top", + "markdownDescription": "Denies the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-background-color", + "markdownDescription": "Denies the set_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-count", + "markdownDescription": "Denies the set_badge_count command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-label", + "markdownDescription": "Denies the set_badge_label command without any pre-configured scope." + }, + { + "description": "Denies the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-closable", + "markdownDescription": "Denies the set_closable command without any pre-configured scope." + }, + { + "description": "Denies the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-content-protected", + "markdownDescription": "Denies the set_content_protected command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-grab", + "markdownDescription": "Denies the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-icon", + "markdownDescription": "Denies the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-position", + "markdownDescription": "Denies the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-visible", + "markdownDescription": "Denies the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Denies the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-decorations", + "markdownDescription": "Denies the set_decorations command without any pre-configured scope." + }, + { + "description": "Denies the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-effects", + "markdownDescription": "Denies the set_effects command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focus", + "markdownDescription": "Denies the set_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focusable", + "markdownDescription": "Denies the set_focusable command without any pre-configured scope." + }, + { + "description": "Denies the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-fullscreen", + "markdownDescription": "Denies the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-ignore-cursor-events", + "markdownDescription": "Denies the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Denies the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-max-size", + "markdownDescription": "Denies the set_max_size command without any pre-configured scope." + }, + { + "description": "Denies the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-maximizable", + "markdownDescription": "Denies the set_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-min-size", + "markdownDescription": "Denies the set_min_size command without any pre-configured scope." + }, + { + "description": "Denies the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-minimizable", + "markdownDescription": "Denies the set_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-overlay-icon", + "markdownDescription": "Denies the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-position", + "markdownDescription": "Denies the set_position command without any pre-configured scope." + }, + { + "description": "Denies the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-progress-bar", + "markdownDescription": "Denies the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Denies the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-resizable", + "markdownDescription": "Denies the set_resizable command without any pre-configured scope." + }, + { + "description": "Denies the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-shadow", + "markdownDescription": "Denies the set_shadow command without any pre-configured scope." + }, + { + "description": "Denies the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-simple-fullscreen", + "markdownDescription": "Denies the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size", + "markdownDescription": "Denies the set_size command without any pre-configured scope." + }, + { + "description": "Denies the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size-constraints", + "markdownDescription": "Denies the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Denies the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-skip-taskbar", + "markdownDescription": "Denies the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Denies the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-theme", + "markdownDescription": "Denies the set_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title-bar-style", + "markdownDescription": "Denies the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Denies the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-visible-on-all-workspaces", + "markdownDescription": "Denies the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Denies the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-show", + "markdownDescription": "Denies the show command without any pre-configured scope." + }, + { + "description": "Denies the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-dragging", + "markdownDescription": "Denies the start_dragging command without any pre-configured scope." + }, + { + "description": "Denies the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-resize-dragging", + "markdownDescription": "Denies the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Denies the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-theme", + "markdownDescription": "Denies the theme command without any pre-configured scope." + }, + { + "description": "Denies the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-title", + "markdownDescription": "Denies the title command without any pre-configured scope." + }, + { + "description": "Denies the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-toggle-maximize", + "markdownDescription": "Denies the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unmaximize", + "markdownDescription": "Denies the unmaximize command without any pre-configured scope." + }, + { + "description": "Denies the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unminimize", + "markdownDescription": "Denies the unminimize command without any pre-configured scope." + }, + { + "description": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`", + "type": "string", + "const": "dialog:default", + "markdownDescription": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`" + }, + { + "description": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-ask", + "markdownDescription": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-confirm", + "markdownDescription": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-message", + "markdownDescription": "Enables the message command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-save", + "markdownDescription": "Enables the save command without any pre-configured scope." + }, + { + "description": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-ask", + "markdownDescription": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-confirm", + "markdownDescription": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-message", + "markdownDescription": "Denies the message command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-save", + "markdownDescription": "Denies the save command without any pre-configured scope." + }, + { + "description": "No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n", + "type": "string", + "const": "global-shortcut:default", + "markdownDescription": "No features are enabled by default, as we believe\nthe shortcuts can be inherently dangerous and it is\napplication specific if specific shortcuts should be\nregistered or unregistered.\n" + }, + { + "description": "Enables the is_registered command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-is-registered", + "markdownDescription": "Enables the is_registered command without any pre-configured scope." + }, + { + "description": "Enables the register command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-register", + "markdownDescription": "Enables the register command without any pre-configured scope." + }, + { + "description": "Enables the register_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-register-all", + "markdownDescription": "Enables the register_all command without any pre-configured scope." + }, + { + "description": "Enables the unregister command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-unregister", + "markdownDescription": "Enables the unregister command without any pre-configured scope." + }, + { + "description": "Enables the unregister_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:allow-unregister-all", + "markdownDescription": "Enables the unregister_all command without any pre-configured scope." + }, + { + "description": "Denies the is_registered command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-is-registered", + "markdownDescription": "Denies the is_registered command without any pre-configured scope." + }, + { + "description": "Denies the register command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-register", + "markdownDescription": "Denies the register command without any pre-configured scope." + }, + { + "description": "Denies the register_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-register-all", + "markdownDescription": "Denies the register_all command without any pre-configured scope." + }, + { + "description": "Denies the unregister command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-unregister", + "markdownDescription": "Denies the unregister command without any pre-configured scope." + }, + { + "description": "Denies the unregister_all command without any pre-configured scope.", + "type": "string", + "const": "global-shortcut:deny-unregister-all", + "markdownDescription": "Denies the unregister_all command without any pre-configured scope." + } + ] + }, + "Value": { + "description": "All supported ACL values.", + "anyOf": [ + { + "description": "Represents a null JSON value.", + "type": "null" + }, + { + "description": "Represents a [`bool`].", + "type": "boolean" + }, + { + "description": "Represents a valid ACL [`Number`].", + "allOf": [ + { + "$ref": "#/definitions/Number" + } + ] + }, + { + "description": "Represents a [`String`].", + "type": "string" + }, + { + "description": "Represents a list of other [`Value`]s.", + "type": "array", + "items": { + "$ref": "#/definitions/Value" + } + }, + { + "description": "Represents a map of [`String`] keys to [`Value`]s.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Value" + } + } + ] + }, + "Number": { + "description": "A valid ACL number.", + "anyOf": [ + { + "description": "Represents an [`i64`].", + "type": "integer", + "format": "int64" + }, + { + "description": "Represents a [`f64`].", + "type": "number", + "format": "double" + } + ] + }, + "Target": { + "description": "Platform target.", + "oneOf": [ + { + "description": "MacOS.", + "type": "string", + "enum": [ + "macOS" + ] + }, + { + "description": "Windows.", + "type": "string", + "enum": [ + "windows" + ] + }, + { + "description": "Linux.", + "type": "string", + "enum": [ + "linux" + ] + }, + { + "description": "Android.", + "type": "string", + "enum": [ + "android" + ] + }, + { + "description": "iOS.", + "type": "string", + "enum": [ + "iOS" + ] + } + ] + } + } +} \ No newline at end of file diff --git a/src-tauri/icons/128x128.png b/src-tauri/icons/128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..9e95f8f5162833b6ae36f0d69a906149df13436a GIT binary patch literal 6324 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%0AmM&p) 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/32x32.png b/src-tauri/icons/32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..aebc0a26fbeeb5cd47bb460e25f3c20af7a4b9df GIT binary patch literal 1343 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 N6$K6Xs<#$l{~z?pcjy2B literal 0 HcmV?d00001 diff --git a/src-tauri/icons/Square30x30Logo.png b/src-tauri/icons/Square30x30Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b6a403b255d5279f680b477f2006f9afa6b10743 GIT binary patch literal 1270 zcmV2lQDeET(ekEA?E`ik~YtePt~W2rn*=I?yae5jUgQoZnAl={Ui-k`uU zlu|z%Sj~X)v#+Npul2c zdFpuq?Kkq*OpkDn1MluiHw-q3l*~LXNfKz)A3HY@v@nK&AgAuN-#}E*Pe00FVZNlA zRAWpKTF>F>7nvO_ zF=Qm?CB(+ExVz7T?kz%v%nt`vuy4<@p_@q6z_PXx=_M-Y_-Fwqr;Ett^i-i`h7_$K z9&I5`eO_RoNoIlAn1~|>MZ?U38@MCl#sd#G0Ugh)?wFC*4Q!*we z3MOE=h`0oT2Osg`=38AAtWKZGBI2HOK`ay*l@iUi;G$0 zvl5n;v`E)2s(XpE`PlHC4yxs4xZBA1^!oy;^aOP>a=32tKMotrHpd9j3zoeuOr;Zv3F-Oc9qZO6cfv;@6*b zOA&*F)tZD5ld&X86^yBI5E#q_=HDFip)yyPyWJez9*!Ntr3RU@=kxQX4hsoghr(Ja zzd#MfT3*7!7#04##G*H}K~o$*CZcVhsKryjl$0f;P`)Wdl$%7BS|x zg*^zab3znLhAW9&1Nf&SS!|9t(Ldm0Y)VL7DOqY1)qf4w0zn4?3^c<)509E}Ej^u# z*5~EtE~nT=i{44}ZWFMsmAB<{<$KtEx7<{w;|w$-8qGoavyrgBy1gA@8!zeA<#;TI zHTPaMWE2cr>w{)K%371ezu5jH1ee#|a}Bb-mj~C+f*?`dsI3LO8k8fXf9R{Ol%25x zJ`|dA^6nm1$96OJX+uz6<*>6(Gqtly@-~a#s literal 0 HcmV?d00001 diff --git a/src-tauri/icons/Square310x310Logo.png b/src-tauri/icons/Square310x310Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..588f131755cedaa0a3699b65e5bf565da4f6d487 GIT binary patch literal 16318 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 O6a|^j(p8csLH`e&x9Khb literal 0 HcmV?d00001 diff --git a/src-tauri/icons/Square44x44Logo.png b/src-tauri/icons/Square44x44Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..dfaffb5eb5d8bbc57ec3529aab216e1138954b28 GIT binary patch literal 1924 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 T%Ou-200000NkvXXu0mjf`cgRu literal 0 HcmV?d00001 diff --git a/src-tauri/icons/Square89x89Logo.png b/src-tauri/icons/Square89x89Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a4f12270bfaa88cdaf203d439cd15e7101058e74 GIT binary patch literal 4165 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 P00000NkvXXu0mjfp4;~K literal 0 HcmV?d00001 diff --git a/src-tauri/icons/StoreLogo.png b/src-tauri/icons/StoreLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..3c527e039adcdadabfe8cdfd399429bb5c067232 GIT binary patch literal 2350 zcmV+}3DNe6P)Z8yH`-tO$o{O0}M@4cBh9sWxW{eK$B_aCOWxfd3H*9u)$rMIl$WG(UR$4|7s zdAWTejTHLfewwi^}>Y5$?Hvig)>I?AQdJhjk5p`uL&r z#Ik@Ke3W)96yYFNzgN{*ROf3QmF_7(!~qN50XnpzP5b7f*>wK0fjstI+D~nG9;>)r8U_2x5>QmC$I!n0qM@d^rgOZEnCUhYm(k3k&Uv>^xOesJPdR zyh`+mXp67U0oWB8*(nQl%aGUfDgrB4`HWR{-Y?7ko11lD?t;_2lvBtkedNG?I^fvO z>&?om(c-{2zS9cn)mlR-#oVk7KRHl<;=(e5DRFildV0+pDr&{4MTEH>_ul8eXfzCh z9jiW)fL-^r`t{MJ{f#R8O+_u+!gP(2B`n|wBSu`NY}%s1bvGp4dj9f<3VzCdL!w`J zw?28B2|Mt!?G_V8-zve0V^#=Iy-gA;B+)(+0m3vX?7UNlo{#FVZbKq+l+RDw2%_Wz z;5zSLFdkDv;m>a_!uo4<=<3nofrmPjb)6n7!+Vn!y!`w{kA4cVATg>Xf#^sBeC^vQ z*f9_ff*rqoanTzN!2%u?P-y~6PlA!Pz|c5ASvHwm3x-upAt7MvZg z!Ze=C#TuBZ!2KFt#}(Akw~FxPudjxUn+({{mx9wL%i*>NQ2?=I=gzG6xsM}#e#Wjv zg8FbXC=RU;173ctHvxCv-HM|crs4XJrvPwXS;*Tk{Oma`Tj%FiHK)H0ZN zNBr6(4BXKg0C@F*q>#Bui8P)FE?E$_0u6CG4YUSRox^1NlZ%lQZ+XkJab-qzW zF2)%|R;{pZhYwXiVkg5SaL3)PfiE2Xd0qm+{w60XF!aQn=NowJxwiw~^-7$3e*wl$ zT!53uXTu{WswzjV==q2gO*ymr0Ej5Bcx>HfV65?~di8}%=*%>D*42}Mu5P`qZbb)P zdhVk8%xux%6Fb_1iVFEM(%24Y99AbqLK%}Z3P~PU2USFA|6ymh=M&5yW~S`mz0cpj z08=+u-7I9t^!tf^F? zUV|1^(jM^Q;@DU>MYM{0{$F+qodl)Z}D{@N>-U=6Aiv&yGG z(~i_J;5hop%v8lK*@>~_`mL?dyUuXG=h4}J|5`zwnF@m%@=PJ?u!tQKM|fu<3TycZ z9SE5+%V?kc*#-FQo)vC<=ta3@AJuW{WD#Ec)f@&#Va2A_mg9dBR7;vIsw~3fm(Qmp z+tRwj5l~G(!Hwv@K9Ywm7%#5Bu?1s?5o(P2!`nv}Vf5&N9N?#a z_1>gsx;2@kJI7!n=&vc&ozb0}@QEGD?9mc-*yDb8Pr}cotdP>xEkJ^qG37w8Zw974 znQKf=6fSqF>z~hH%E6XxymVuw3&>~z$&o3Sor=$rB}D z)o!=!>`WELjxWk<%28{--+Ew<@{KvTx3GR=5+2&0{*Uet{@{^G1X7f!b>!tuL~RkE zIo>J+AD=l@fggSE0{nBb`k@2JjhEn&!Erb_x}aL1%f$u6VJy5a9CS1n#N!CYG}%;E z_k*w^>VrDPsY|)++@T20NpS8TWmsIafp;h&&J9QJ>LwFeTCw(tt0~~-Zv=`(+YNqK ze48L*J&g@wO;DtzAS02DOd7Medy0h)%PZ|9pqht@1n1g4Lc(XhT=0yQCBoS+E8cTK z&^icVW_tM9;l7F39V?9{2XQ?s*U&av#9l|E+h|Sgs}OkGG};EGev3EQ-dqB--S~Rp zvbWKofo-%U_EqBBq6H1e-l5^O`6YpPV7f+hq75)*h~30d?EyBis^5^c(GnW=>Bw)c zQ*KX3?gKC|$%NUDX~N-1b3+5$Xjfp6?+hCMan_%ayK#? z+%(Oh%Ma6(mK7blX&~b9;Js%DLUVn^?`j%;CjY_)o_?wCjepCJYX1Lwtq<||7uUYa Uyk*{drvLx|07*qoM6N<$g7zwsy8r+H literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml b/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..2ffbf24 --- /dev/null +++ b/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png b/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..2c04dd64c6c46f03f6220adbecf569b6b6c3c4ad GIT binary patch literal 3097 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

Y3;FPU!t45Kud~+EH^T1B6}= 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 KMNUMnLSTYpcd9u6 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..10ac21c831048b45beebc1ce60550a2998b9491d GIT binary patch literal 2804 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 be^lV#Md8SNIs>=D00000NkvXXu0mjfVW@u+ literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..37217cf51e973c60bc475c85883455ae367bd77d GIT binary patch literal 5284 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 DPwbw| literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..eb43a0d1d43e70fde22c72e59f4d4c05f25daf7b GIT binary patch literal 11241 zcmVRnQI3xN=z4YVK-&<4Y>m{Eh7v4Qa*FdkzJR%6CKejM9q-aGFM_|MZE z4>NPlymu^o-uU?#+X!QW9?yoxfF!e+7K<(0FbIRe0t{NfLan8{CH1DR%KIX+wydgL zA~GT}v#R5YqL=8bB_qGQH@^7py%{iO%$PRIm{VZPm;snEV+LTxj2SZkGiJ;H%$P9) zFk{Ay8GsoxW&mc)m;snEW5x`?j2SZki_h-*2KMBppi};tvZ4QcD$3W+O22dQqpSXe z5Hj*F-+=;6!3%U@Y2LXHNC+q@*-ikj$_8+=G0T#c680Q!ZHD2>0 zdX5E+b06#Z@zHaPYaE?}I6&uTm>}6s(qy}3k>P*;KQp%)fF;ZuSvgomzhxj=T|0@j z7qSevWPm3O9zlS}08cl#1b{b8FUkRWX%0Zz+WPO`>E3Pt76Yg-2e)G$P+i`4NHKuu z^lGx;(&^P?!KK!#)f_yG1p8BIxVs*~RyP3q*E?_#4eQqsgg!bQi-Z7Tz!eOhWP+>u zv+txA?1oGV?)$gzcJDL*Qv|FW!vCPBxi1uWbcKwH)>Jw}Mp^3*cj6kfV0|@l5n0%0z@>Ffr88tKytiRU;o5I~Z_a%NVATW$ z!o2`h`&BW3%h2$kn}&}d+Q5O9O!}52gpIKS?3;JuYOri@b?F9|q2cR-DO5G5!zoDJ z^1pu2-5=-mor*Oi{73v21=k~7;KJbWBdOp*z*+$4qTw3_Tqu3R?8-szk+pxn|69|} zgE1oG=r}w}zwO~Vz|ip1kcL+{rv$gdjLc>0V<13Mai}mTOZW;exB@*B#!JI14f_<+ z@Fjp?@@V+bo+-?nBI$u6*=N^&X{ZMp*@G2ygU@PTZy6dM8jpro!u}4EH1%ZnL?^i- z4F|49qTv(96ebc};+y`Ff{aWza2XmN8i0nEzL`b_GSW!kGJ@S{MZ?Q_wPBLc53-bQ zwvdABUPHsj%M>;!4KEwYcUjq~d)KZV>Z)6SaZ~Ye(eT(HG`vox5cNeHk%#iN<2}~M z)U$O7uy6h&uIB-lq2U$K@G#A3c$sK}UZY>{8(d#kYp{a+=@CQ28^La(*zdJT5h9oPo}DJNPM#u)z|mn)N)Ai=I5VG%bC9|}A=<`hZq z*ZKzg5*Z>E1ibHgdapQ`LTDhSFo7Xsq=Mb(MA*Y=(!7|4io=QWU=&>I5(O?p!^cj; zM+z=fHm6-#m|T}A4^|*H-ka7%X%w%i8mA~t%+W^3In5BHUTogZM0hY-uW(%wX?VZ8 zT--FglCV#c8a}Du3bij8a!#`rtV@Ik^YUKPm455>Gu!-G~ed_wDHBu5SJ10Kma zCAn;GbZanzy@rOL1~fc0J`K-1r^wm)N6i`x;hO0zp=kucuG#b#oKwVAk$A9g-r?|G zhK5fjxEg8GUpEcUJujr|t2gcK)$hTq0=Z#|(wMp#jTmkCjORFu=Sl(00;`80F*H2K zBraZ>^8K7zG>1Om@v=X?m2GGmUey|!UiFMg?AHn~3a*~SNoW#O8~#)Zs;jSShLcW7 zLp|9Cd$RE8L*wwL9ogj5@bPt`>CwIhL$JD%D4|IL4S(KWq~S|nZ>u|SF*|vF25$Rr zGvWM;o2DfV&!eb8f?W~N^kkKx;cLg|okHOHn_8jX?S{S?aMJwLw4>p0IvUh3p9$|u%;vbxl|Jt7%@|*iG+#{VAGn0w~8kKuDGhXF2h34aB)Ef zKJmBhZpcVXQ5qeJ8tx1S?Eu5+u7k^1NW(s^OJpIOqh} zUH_fZl$(ZPj13!)eRY zRnJeV&L2k06k-gWXd}UV%kvXEnH5TP^s^&0=Z|2Cm78 zTJPh54gVxZE;T%OppsOaDh962kB*6jieH=wEp1k{x}o$5uo}%S=e>5kK4|!$#8!0x zODqlV0UjY>lFFwm7d^2bS6tm96dJzq`zab8=Bg95LaX7qz!jjRcY^ty9aHemAE&rK z&v7(Vyz-ik()p;JGveaaf}#x<@VNjlDjGga3Xsw@ShAQxv?>QxN%~-{w6P^TQ2e=5wdB;l6 zRrrlnxM>xC|EsMNHf_%vD#l?KUfOOyo_OR4Jo}5IFg}Vd=S^?91~09JHWpEzU^oBV z^G+sk>sMRq0$k3}&?W+)9Qv_GzI!CAiVWp_BNqNuJ!;sv8s^Qi{g3Ozeh$n2YJXp1 z_zIj4=3j%5$~k1L;ub+xF)q9M+L^HS&N*=0@oA5(l^EJQsbmrLGKFRJ#Ns7s_#y?@ zypvOPG4aLF&}P^iUaJVKd`OcAKnYL+`^S7_M|CJ#2A@+HUm2R_f8M=w$_^Fl!C2^c z$2X6Mr7N0iG8`hWFR9vtMNz(*t+Q_ZYBRL8k-C`hd}ugX0+-Wkl|vZI6;vDyekgF& z+z<<%t+XXk+>ayW>cKB=9fy(OTwR>=_Kp;+{l*;li%Z*l?@m%xx&o>yYpBVgizzJb zVdXv7bvM?RkoL*PCSYP5UA_m@$`eCM>m2{^1GF}} z1CeNgIMwi&-#w%My}o_Ye#~Fg6!yOBasF!AzLr)3bLVC3uglJ83AJ4?pY565+zCJW z?vS=lG(dC%Op~UtyPLpAE)YMdA5hlrxu=i8fkCW#2_MRq@KCz`7l)IDD|;;x?6u+m zmrJgI_d3`?E#}z|x)D9)_)`*abMlK+{LlMawoD4)=}kv%uw8N03|O#OOf_=Rr5*6Z z&yK*s{W(o-o=7wyqFTW&fh(^S!#eX&4?j2o4?i#o`v-HUwVP7 zxbGAWT#l8MV-Kt1;j+h7G3FTe+yZcu{GuE9%Ih-cMlO0(nc@ML6Q0CH@Lvq;ifhOZ z|D1)N{9u?qhG1gC61q07zo}Cx4Ik8YS3gaUa%2Y+=$>&lzxUcdXu-yNC#X)%DhHUQ ztPCthIw3b3o&T#!q$+&x&Jyx;JP8V@P;KrV!GP=CPdS2BNi@~-jUMNSBlX{9P6(+4 zUh!tMixMtB_>Y6IZ!f>A@8At^?D4Yc8^KOoxo1%qf zn&Gr%O>n}A{8QpaJ`8@CrNqR9twJCCFju=KtrExvhdz#Q*di5fKJR%*&C|QB=xUTb!N`yWKe=bf1{oK?&TEB-eiSdb^oe~1z{RwN-N*4Q9N&B`Yp=Il!Brh& z6R&kY26!&w;`~SrsAR##ywaIxH``xT3TzobFaP8W`+G*QGlJsvS0^1r1^U;{@L?#N z=fJ|E8pMk>bbsz5ATeMaSF;YLhwa;&r8#2baQ3-vf#>14<1@Ba(Ut6wX$T)t3t45U z{fn0JvogPVVX8JHbOMXGcXjdtP}wsgLC9OVL7aV_@D z=A+8M#g5IAY>YI0h`Jfwv-x7`{d8~Z$YFE`7pV<{5J&*uUib^5ql;wiYcXJ5^p~x0 z<~i|{ds{%m$uHkN+YTRpwRO}6nhgl_UW*bUx~2+B?RQ@T)&h@sUV1E4WQ51uc}*N% zEUmw1wNij()fc5(iMcx)}kUsgp^&+0g6`Y^!j>LwDK+l~nc6rFRVdZ3?2 z5(5__FBrIZY2`SK0sjkM>4uFPhHduI4)HAFd(Kf{b9rWG6AevgLPtm0+YB9~4CkIv z7#q!cp4ajknAjN>q{^F3a&A1cf~j$W3q&`Xvz0NTlJyvG8MIoa5G%Y^5V+hF=f#Ju zNVnX__`y{^A&edTyPIbw8eC3q*7ud!cIa4S3QHF_2Zir7-*ZlAg%xMct^iklzUl8* zcGIH2iF}4J z2Mr%|EQwOdA=^bV^jRuSyS4%*{`x?-Lsd}lY%}`f+|-J{>YmM4{;fKEw9r-5RUWsjvT{VYhAiswYPtZX ztkGQvHx{NkP_=H55LJ6z`8Age4gZH%+1}K+4Jv;@ueUKz$A}6>y?0U%ck!x@{JJWH zeXMr|93INSYp+ajQ|)2qlrf8L$GdM+TjI%BF@sADO&?XrNF3@m0nbzcEM+u2ICO+* zSoPQ8z{SM6TOK{?4J=M@RsRK}-8c6ifnN=b!j-FMhVp2ae{!ZxhcnOyB~Vts_gvPZ z;0a#dv%lj3r*mFJ*J3i8%ks`Zw&;!G)-xQET;Iw;QG<)ES3Yy|3}LpA(aaD1XapX* z@36nu3IQ(Xj|^xVH;ll88-}>4?Gn4#mZFXKx}mw12uCA_4oz~s#t{2EV)>LKL8a;Y zQG-iKe=t=Y2gAIk7kHdhvvkcnpF=-$lQ_6oO36b%I&7D#=1W`+2QFtO09)HVXzz7R z34`oL3Nq2K@Pj=^OWw)LMn|V$@1Ktra$~WAOz}GL>Dk(kQ-cTckr~&rFhZmdjes@9sW1nS(d}aL^NE3|w!# zcEFWH;i+RM<<&Sehe7iaNo8N9?L6hqR(S9PsNuavS!gJ_?qWp7qYoW{$#GNwE))V+ zxswXgOz>fNZTq+w>2cYNQnDvsnhV0%(JZ|3@*wPbkA}e`llEii&;_ktFo(2#|NTYf&unff2zYw>RSZ+he~%%$G< zgcJEvW;(mmaQ?;Z@cb{2@|GGakQhj7YmC|t{&g@3J+5%ACrXNQFosFa3R(GZ@!r-vUH=4KZe;qkG{XJ`hO zN2o5b=8`Re7dcI@s{=gWiHaiC#QTqmxm~>W>@UU&buskN@VueA*ErkbdV2E_?$2}n zMIA0)ET{yYOl^2Y)jvgi9qGY0LQ)5lo?>5?oCF z#Oio3y&?NvKBK&BPdq%r{kfK{XyF1^Sg*!IGGQG1Ul>ypbS@em1>@rgG-knJJ-Vcz zXShYXyLU}V((w7RY%9;nr}$T|`&cc+xBob4*Vx$e-c&en6~5U`kKg^?F|IPz3vAgH z>gys22?STgc_s0SeWPeJt&@g#dt*zMH*u32FaKs-ip*de*q42xqi`{MCrX~x(`G*y zIDWb1XhAn92Ckz0?$={n0Apka>&5lfo0H1ZgLFlO>cAC8>FkKXrJIKLdSj<7XyRrL znPMX>xR}@a?3zwraMgGf3XB{2y6CZ)fW`~p(|BQmy9WG%#VrP0vD5ULz@?ih^!oK_ z%lQEIwgkAC=el7{SEy10d2#OSynM^Qx4h?^F;B=xbhIdJ(Ha0QNwF`guJ<1qi9so=Z1GiqpfNdime+6~1d#>FBE zF^Qll_do#+?**<|T`3_!Zy2VKB}l3$lEXaNC6~<*2AA!9-<;rnot9R~7Ofn*LFF+c z%6m1v0LzNg@Jf{QA;E=$G`yFDrn8e@xlt7JihzrGoUqx);F0!UaZ}*bf=*1JK*_fz zec%eK8jArrLUmD}K@S2F07Q$U>EsX4`MMHtomR2GdEuc`C z$kuuyOkwDaNdy3*fk}*jqL-uTWt7u(1TK;HIx=j9(iG~bUGMZT+!cBegj%&m0WN8^ zk4kW1RHd^uD5pVsBIIaz70i)$zLft&i58?0@upnha)d)7Or|Ui4-q!PivwIr#lA9> zt;VVWTr|8YvcugI1*_rreVA1bu%R43xGFqfCK@sWqbpw>7r3NZ#3(d}K{r4ZGd#E9>xQ%XlQy()q%9p@Gj$%oD2W*-V^#_ zt#*TVQaQl9RT=(s##^UD2Mr&(C{5UotODQ)%Os|x_d6N|Tt0WX$w`a5Cvup&8BAU! zTC>pCd+nX_&=m&X5UbfiFPj)gr8KKn*QPA{3;L()>CKG-HFomizSxcM7 zf*HoFAm~fm#-zdZyI+sGcrU(Ce)$=EaxG_Ci*BY+Ig`k_xf}~kAJ^t`U}xB{3uEqu zFWA|`JZ8(DLKdZYhI*dYUKtO4j@YqJZ#ojXC{1O(jbMT!7I2|Pa6uAi`iM7|Ll-bn z2rek9y9A^E^y{~aoCwu8UNzID1z`y!&pYZ86CKwAcJE2RXnn$^DbU=#;9}lOBs^s6FJ<7u zIs;b}ETRkzuM=FdG(3-3n1zUY1o~^OzM+$o>;TD5G~pFB*MELC_vhI~*IqShdtEJB zb(ERHXu+k7MXXD*BV>i$7q^ZHrHrs1$(-`U@ZbumsJZ&novw+KUiREGhwB?$5G}aW z(eyYyz{QMJ(G~Gxj0I$^e*(93WWW`oHazS1biIZNP$P{Rl5M3dKUF&tz0)^uDTf^*TH9<+XkPy zu3PB6zxtn}d1{_R4KJtM0Fa9|1jW8#`>REwrkAP>uPF_jvqh^gxLjVFZ6u3iA~Tix zRo8aXnuQ&~iL08x#Tw{+>eJoaig_sL4xfAGh;}u6qQC_)()9AR;bk_L_0sSnsU{;s zRwxBLQ)gUFy;<0zG-1HSN*P>zT_^nI$7cz@-zOg*fssR5Jv2NAxLjuxV*po3$y5eZ zH^S4D(-T}bLtmpiuZdu-gV;V2+f)`Y7N)U=4Np8WVz&;GAv1!&wP0}*{0;S5ygEau zVhw-)@~E~AVhme>7c?-5nu_LTWGnkd0j^N2l4fufjR|vECNpazBw`GhH-2$8-CH_l zKZkeYg>c|v0A>n}g{OuqYRcAK&pmy3T7pX@iJuzx>xZp^JzvW5BTUu{v$V1OwdQ-mFce?Ax1l1sAIT#a@qX z7PDi+daG(u!cYLT*tTB@-MY0M%5m!M$xrC*QH%wz_#S<>q=9qX;9 zD7akny9~ILHI2-~3NDNnT=J|^uo|9G@4MeS03W@$1J1vwT}hi*kYov&$NKFHN4#4V zX{O=j!G(1JF8P`q3i5$I*pr2m=Vvs4OK&Eth+vmp$S=^sG%x*X)Yb!@e^Ey);9|gH zo5vGA8p>#B_@H?qN@^rlck7e|mtFKGn*^F(AiS6uL;lu4HK7UNqjOR9en>bvmjUhR zO^4xk6lj-T&MHQ=M*=Kcl|co&p*4k(g3JGgg-E!?%44HBrQnK2i>MG>A~t_vhN>JW zg-op4O_CtGHv!;s9>h{V9{<^h{a_WNnDT;2n>xEP%GOtJ(X|!Zur95!bQPtMq2W2s z8*v$5bXuz(nqEW5n28%)@4S_T)0Q`JRLpILUv3%mzXQ_m3DLtG>8hK-)@ba(j%RYK z1&i~5W7frrmw1C@D(At4i&6h98X9XAc%a*2^!mqa!F^Q=-!Nu$#^`HPFg)TKq!{i_`_UWINI5 z?jjinxQhO&I8Le*7CqECoDa^IdBq73ueVkq0YJ)fhF)_>>?>c!+SNttM*zY z_R#SoBQ^SNn=5pUJpasy5K|Z!sz=!$EObRDkMTnXEZF)Ke?d>ChPd{ISu|C@y^_!M z2pOHsR1`G4uFA)#i_FlhhIe~zHYY*gV*6ce&GorkPJp&HeyQ0b4<3L6gIOgsd{7BI z^)x-m)rR*vcFUvVaKR<5(ALh6c?PhRJuS4t)0o{}$Zp|-9`lXFS0w;kz#{>7IgW8( zfRIo4i^*xmnj$bifk7r5^F#vT~lcg%AiP?m--9-BroEbfp(*gyRJ zK~&ir87-^yb}TG|s+F?vx8E@vPFc`ot|ViwVc}hO?xvp0%8R@mdn|;clrV*k@sS5N zo!JG^NTu*mJ&niNi78`#d=%mCe?0`hd4AknO~#v(XePLUw>Pr?M4*GFPdU;Z zutMd51WRYW_-*M9=llga?;rU`Sq)DreqS@r9;Eh>zp1*9+2h5T_Zka%to_~yc#f6c zo9MV>tY#dlK6mw4&^YlJ_dM?f*0_33tFjnMPZJ%u*ekDx*h&UuG8@$0D*{a6~c#LEDSkH04W5Ht_ zUCs;dxXV~+9G%ly1w1IvTdi000vAdpwmSQeV@tX}Hh``FZud_5>F-0|)-%E3M|Eh& zPFCekyyIjdlz~Q|!m9y#03c-8$0f1B7&_4)Ps4Y8A!AS{8o$*4$~{lFh@u$DRC=@8 zn{haBIl;p*r}u5_U$HYj55}x1y^b3^o|8!2*)>7}7x5L_jFt1mv8Dq5kP%7nxQG8i z1aH5ERUxU!c)(aqxa%AX8V8SY^a-c^#(c*s=cOW=AbxXJsoW3+mylO$sk*kKCOOJv z$KVE!h$ckV*-SYQjRcN|zc%jpjMiFfSSis{1Ip(Fd`XZ7X@Prgec65fQk8 znx>)dqBH?Ce4@aG{22~$f=iVeUTDq~crRrDV{0)Qs@*M9P?EO-FE@BFdKzBK9+!gL zJ7MtXj5biy4N;{mijccy*IsHp7_&}>cpTB!qE%nWC=D)5?jDznSBoOr(7Nd#YEE&a zrMZ2bDp)83*!uO|!*p@FR@yV^0$0epoRnwM1um3e5*3uMuA68h%$$f8z{L~F)8$P|rcXH@R6pVR4UF(e_32y~*EJ1~$)@3jLiGqkd99oNb|{zb zQ$=iO1y~+rbNY*{qM_jp4WCFFzKS(`aPt}cI8PD3z-&_GNfOn0WR z0s*gX+_bVs7Y4NE-KU|smwkZ9m_kFt8ya2^T&>L=y*e?V)q^ox+c(&g1&c9@ok^Ss zoe7jGHi#o*3Za4aCApe5;7E$3dLP(y=JvV}&vZ)o^fX!vNs6&b)vAVY^I zYgEB5B%dkN<<*iNZA1;ONC8$2GNXn!YWOIb!Z^UCo#cQT`u>FN8TtWfPS2}cl&zuR zrw ziSuAk!8Gn&G&zOqpsK+{l54})P5EjKG<=Lq;eD(?jgC~4h6b1$&oR^0%s zXkVc~gJan~`j-1j4JYb=hHnU_FgY~*E>eL%{V77$N3Ft`wg9UJ8=b3Oi(oIEwO;y>I*l5>p6g~tbscR+|mNJ3@_Vh6L^fY*Z$$9Q20iG6I7I62Nw=a?V)6$jg~e>enV z@*{u~ALqnA!hqQg2HS{LfL0`p2JISY*0=SoRNdRl?d?s!nK#-pEj>-^O}}2M>Q;UA zRo(k?FufhqEjKNKX$4FxV0xQYz_bFUw`m1{ZRJz%2U~nCDQorP;hDv>4gNnJ0e`XP z-Wyr}7%_9?e}rrD-cNpCs9*YTrElo{4IPR8KM7~h*TOe9{OqZdegr&lKMrdtyU*?l z8Zj&vH04PzndFDi6s#*pcV9-&g~svbDU9pVzD2tO|M-2e_@q<7cmIA2`3W&cLvrZ9um2a__m46y-?eu1H0Yl$%Rc{C!VeyrFHQ;t-2V@^F=BlLQDqe0Xw75XXz~k21`JR>r6wJv>(&69qJbbdDp8 zpUpKk=_dd6=kvrd;ewhHeio#Y;L95-qJ=QCDdDHMx}!D%?*ER&aotQr_~QoKaRP5< z;ZFwXOu|k6_>tzRiwP;L1YA1MtY9yfRj=cS5UcN-g^p~BHhu2@L zK&8?|-Jwx7+`t{8l%i1V&K()rx_o5n5) z`qQ@+p}WU&1xN4Gu5C~3#h(?f!T0o9@cA!xk}^^KPPh&@bYJei5JqvoN#TR*{4_)p zIB6Gjq3T{}9%c&f;piTmx*JrD!g)~lrDI7@BZCswUXdsFlM5++&qogI-7Ue+@dybZ z7&fvNy0BA6n77b|1&eaN63)A*0Pnt8gx^0~hK?=)(oxotc>flCCYR^?7HVY5j4lW< z3>;b#0}z@+IyMQkS_K;J5^5EIt{DJ@5`?k8_c6gkR=}dA7Tolyf+<57JR;%O|2+nK z`q^sHhnN_1A%-B`&ng8hvf+z&cfky@e(#(&f36*NY^%cHVN~(J@18L3pY>HPBOKc6 zK%pR@P~;aVL(0lYf!FTQvOECC7rr-yhlV7adb$OtoR)(*l%3D$Wor`Q5#sg)3Du>B z&^yzD88ZXd!}tG(7qy^f5##GP!TTENxC&8kieTRrgiZd3Kl}3YWAMq(bois7ca{x* zd0!74Iv~mI2|rl)2+G~+1P1t+J^gjqvZ(@FKBz)hkFD+%WOIaI%M!6h!e@V5tFk*m zxc=rGti9Y;zTBQ5-S@$}HQ4Y*4e~`)$jBes!c4eA9ak<=(|eMnS)c*+?)nOxwk!|l ztSR`)oxdGHq^#E`rU2AuYlH|` z_+z683zq=g^7#TRKPv!NPR7JMh#Axwbx6WXtJvXnPl-r#6-NCm`j)QzHs2dr z`EyT?z|v(o=1S;QhqVb44<217@5a8{8QA}xj<-18y;dj&N3 zCFM?Z(-wn(p(75g`_-^=AK8(WP(RIQIhz#lncI7m8>?1j$iv56P{uSjQ#W#`YcQb` zjjw&)S{qiZww1;61M-Ul*~SfoV)`8@SL3~%0{x`b9R&yn_SNC=A?=?LWgHG8_^1Q| z&}TqMbELSSfX=mTOBEjc(E!Yun+sV#3e(Em&(LLy6nGb(nuj$PmdF@|n~xx@xu67_ zuV{xSe?0_f1pXwVuw^JH4RZ2BvyhjZBH+4D+(c=CTMux~FaS7OSNZ&C!= zbvVkPwm?t#!nHuABv`2o4b@LO?1k9FvP-B}_3up`|{<~$^wz&$Wl8EO>h?yJeb6EnfiQUbc=V8x+IAxio zpc)GyM`s)zL3rvnRoLAxq1Z-;JBDu#zzV0-zSWt8nNpBDG8oS0@(43$SrlVzIBj{J zP?g5_=C*qmjhulxY~5Ug{+%@iVQW>bFzHK>G*Mrp~0j*h(g{os+R zt6bM$Y&HZ*?yK&OB7L(ZZyCB?;fVH@;D}uAW|Rh=a0-@~Bh-!Wd4* z#35_C0Tv)5jEgQU!R6PqDPeL}%fHa5L<`{XAx8&d{uN!Tcc!f^9l*ut0%p$6!Kc5_ z4Ktn|hCh-8+nfwaBWsY1>1|3FyU53vl-2g_7=fMJhunLSD$wRg=oN}}Oym{aQOIsE z=VsCvX=7=EiOBAPAcf83VJZ!*&(bw@aT17%>e#pC3KDP?+EN~I$%CO~`FebPl z_ijWqZ2LDO3~R@DK_radR1jZzZUL^kuFd!JmWy`Yd%FzlUn@f&`C|@*p0#_kYd$2H z$pLrq(i~i{whdOUY14jOYSeV?ja@KIgx~w`lqow8K3gXx@G*)P;{51auMvY1QFb6$UQ7wjTb!zhjaa4b1;xB~sV zhG5?O4s}mEw-2hgV3{$>m|GGpC}IjfhK(58rs@G0@#Pr6#&lv>xFaD;_kwmI>;f*h zxCmX{E+OaM*&BZxgFn15rYuak4=)%?4{7KeL#jMLAH#}x`GpZGz>K;^v{nD6K*4f>kq2e!Tntm!!6J-muXL?Kpar=Fho$uHh^?Wj>E zT_>dkwE+IvGs7ZO)1icDZksxVgr06L(a|9kjyJR1EgP$f=I}Tq z4?*2mm>3>*%j{Zh$-9y&&6&cWrBYZHLU^1CTHfjwUHgQ}U9Viqb$8Y9hpU&LQmW>sa3wX`5^T}$L5wp2{OGUX0K91W2MusH` zdRUbUdkM+#nYa>m@Br1FM;-NfFT-Z;XgR^t1&adY#0>;nH3qCs`4CT_5JvH-Au3e318X#_4M>Yx5}&0Xn(jWBIsU zM7lA}uz_BEw9lEXCwzcFv6o%lMdz~o_qo=viIO%?sSvGA$0nOZXf+WI+?Y1&N3=W$ zCtJQ~FyjERQOa(_N4g89ir@UxSO``wJEI6!-`J@HE{)`hVI}iJtPFk?U9JcXzKSjV zs_VL_hFlDt^W_(YR3EB<1elpH)2HF0b&dK&TZw{_s0hCgIMUJ=x{(H!AL=@F3n#C< zG~$>3yvtpDMF(8_iB8RUIy$IIV-yMzw8toN&e5m6{^oAD_{y%(xegwv!Jl6lQH=w! z${fbLeWVUDJ~|BV%hn`fCiM(BUUnF_D2TbBB$iKKhbKU-`=3Eo1MpZ91zNrQ~{a50TeCBjK0-c}Ve2Nz+%; zgx`qQ5A{aH6e0W`($>t7iCKs_SqR5ZPNA5CRj#+jGJO5jQuXTFzT+X+igE%^0ak5uD-^KLfF^#oz?`d-qteOnn`dS(c= zZY=xl@v*EmRrscW(Qi%katGbyWwvKx#AS=t7UeN6E?&+D|snzQm;==0Ww*Dj6gUD_U))sqf$;O!y@6gw_7e< zA%dbjW|_Wf1b(S~`v_&p&;E9h%9DARGtY)aOA0En;#L(d&VWk99CbVkepg=&_U*1x zVV-A1TIw8*lL6_NV#lBa!}rc3x}(E#=L>+Ecfg~oTy_ZlhG*xreu4% zcF2QtJ*G8ElozzM+3J4%i4^1c`&ec#6j#JZYtFnpoPSYgD4+O<0(wQ2HN~V>PZ<}6 zzV-gkpY;1L+_i>1XlA+T{)b!Z{&Y|l8aK{fdA)8gDUa$&7HD)%$7Uo(XDa%$7lU}i zL74^5N@nU|fKX6>A6vXeL`Ud7i=L$kC2d= ziwNH5Bx=biMOd`BNHZ%L1Qh)d$qM=1x&ew$V@lBw_y1gu=f>{=I`3f1mMXaK?%ilx z1xHQp4#feT~*7=?ITV--iFxHrRv8&ZBrYMUKV!n96I>+ZLh!s z|I`ot z`KZoMjFs~}+|SRzuJ5r&_K_0GD#qv}5u=$g>JIM04rujiDc`>50P~fFIEvA9>DUOW zNffu=)eUE@D4aCkPQZ`%-rFPa&`d|bD%LQxB_HEnJKFbz;QLx(a4o5&&$xAlf-)xcJq2dDZ8L#~T@{7<*~OM<5(k40 zM>?T-R*~)x5`nZ~s@IJBo4fa8(yAxuroU)V#e9EE71XL2nxMgm1~JRJb7*|Y1IAnB z%~|tV7u`!b#+-wUx_3xX9m1WJDP4*g!KEXTy6Uk0=(<(;qq1t^eRu6cNSwGQ-RY+y zG}BQ{+HlD`^ocy9i&_MWEcw0zgWvfDAeVzeVSGN?P6E*p66xR&(JzQ#pDKce1Jn(> z(%sj}mu^5#oti2iUANMPqq%VFx9;4FnU`{Da&6~k7usv(GHMf97?y;8Y!+^9bn{u) z_)lHiGvi{aX{)o3yUJCT1!FTTfsdG_^fEEHay9&DxXTQ&+>usZvAu91WaKdyJAKd>f9}?~wWWm-_L9Ksrqdf1*(Hn0$-U*YD`BtLbva zTBA)NoitxQu_c8k0}vSfQ%c~F%UPX=6X|=z?!A4RLkmCEISuo^$j$wU$Aj<_ge{D2 zCjLvjTAh{~bFBY*>H=}Xev{rkU)W5Eu@#~f!ut_sHNqKTf`G#UjPpCuSQKBM2q850 zBGk#Dcy^+o^MrC%i<9EJB)@%Ec|Ca~Ue34Io7ND>FL|we`K(rlv>0^az;VrWG))faz^o g0n-YY-ll5%Kj4=`bilwc=E+NmYk_`W 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..ff4f385b5faa0667bfc1f870f6a3cd23d1803b36 GIT binary patch literal 17372 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..c87a584d41379b3e9e59ba57929e904382e961f7 GIT binary patch literal 9752 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..c1113b6a313ffdc6fdc685e0bc15a5591ba3f433 GIT binary patch literal 23738 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png b/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png new file mode 100644 index 0000000000000000000000000000000000000000..15c522a351c5127d0f1c2f30f708ef9234c54823 GIT binary patch literal 12903 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 z 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/android/values/ic_launcher_background.xml b/src-tauri/icons/android/values/ic_launcher_background.xml new file mode 100644 index 0000000..ea9c223 --- /dev/null +++ b/src-tauri/icons/android/values/ic_launcher_background.xml @@ -0,0 +1,4 @@ + + + #fff + \ No newline at end of file diff --git a/src-tauri/icons/icon.icns b/src-tauri/icons/icon.icns new file mode 100644 index 0000000000000000000000000000000000000000..f79e610d0888377651bf74196e383d5f19db9ced GIT binary patch literal 160768 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

0NP9+vKya2B?t?kq)ME7#zI% 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νcm7;wCI6pyAX3`XRWg&B97O(aj4aQ* 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/icon.png b/src-tauri/icons/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..89356af3fa1c17285872435fe32751291988460a GIT binary patch literal 27903 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/icon.svg b/src-tauri/icons/icon.svg new file mode 100644 index 0000000..9d0ebdf --- /dev/null +++ b/src-tauri/icons/icon.svg @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/src-tauri/icons/ios/AppIcon-20x20@1x.png b/src-tauri/icons/ios/AppIcon-20x20@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..ca019da5b7b33ef52c836a5613e76506552a9bab GIT binary patch literal 796 zcmV+%1LOROP)lFPTXBL7apk%PA;km9BOzKRp|>Z^v7CK| z`wtJ}_lyohXINh|F#ItKs|xF@dOl<)FE?*VC@o`1B@M*m2Hy2$p=k^il^#@7d7!Bb zZ+cURujxo`=)BSdEuCdQ=iAorHuZeItjhH*{2CZfg&eY_9eH(~P^0rZY z_%V@1`<)Q{0fKDC%mX@ktFDo3rW{yXR}f=gwlF`-!{PQ5^${a@!)^~@#K>?K4UIu`KdBPV6JuG7d`jCn=jyq{rA1Ys7KL0M0!zdh zSz9r1?xKv1glQ`UW?~xuwgrL7&qV8FTMa`v;>FT}icH#oQXyGJA^?v@32#!0S1+Bgo1vbk#Kd0j5vsIz)cwHc`u%XdMzK^S7W1v5?>)!6?)oJbs=U a82

q|LBS8BbgQ00003gHOicWtKTZ7UZxa#| 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 literal 0 HcmV?d00001 diff --git a/src-tauri/icons/ios/AppIcon-29x29@1x.png b/src-tauri/icons/ios/AppIcon-29x29@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..2ebcfd31140f36a08726c0da711160ddabc81fd0 GIT binary patch literal 1213 zcmV;u1Va0XP)79^!Y>je}<@WnTu^~nd{6bfRg zRMa98MQNlM3R)$EqGD_}ZIew*o89KJ+oXHn8E59)=A7N_ratI|pP4f|^MC(8|1}=U z2L9vWsr5r@6-YCRUjt0J*i7`9-erF9Avc@_OD4C376?~PED zfgc)C(Z0><=vUzE4V)Z93E*v|6srbb;%mm1LQ;~5wuazY=+>g&(^Up zSE>Z%PkJvJ)C4D$l(|E2_RMWND0dpC4QrBvAt6MNxmV-f^i%;WOC`&ZIH-+jjf>A7 z@uGc;0$Yr+{j0GO&W&d4+I;y|8BHx7P1D({gw~Vv@qKO#4te48EAR^fTSI&gKd)l% z)4sYkzcQ7hQpjkB4JkXKKxelbZA>d;+`rX@OA`f*kLB1QBDB?*0Ye8=3?FPjSFg`J z|98BIAJ5&v64TD$Yl~A^nvSS~SKjpDcA8=>P4u7#W~NKHc!2>z1{5p&G@cQmu_^2} zbinTZ00y2^@$NfGEG0|Qc_}#%{k43OZHkFr{ZF{RX=Ec&n)J9l}-6X$XSfBsfL z?5{k&`+5zetRWgN@W$IM*gqV^=ciIOP?uBFwsu8mNrhdweaiZp;=pq%4!#f+fb+9O z!Qh!gK|zFQf^|I_L8Qqi*6CCkTeo{{fR&mOYV%5i5kJ4D-^UpG@x`e$<`|%nYd1A2 zIQnt~eFG{cE;1V?vq-1&x+haOm9lF}sCCc*$e(OruZqcEvxqam);2fOE`-+2ZWeB3 zO#GZd-(wBp-pz$|l!|4THNs|pIU~ujWvOZc^3VtbT$sLG5Z@yw8qwVwz|oh&;!I+( zh;YO$!pPtu^Qx{XXoWNeAm7Vni6jU`a#71Hd=|w{zn9GttHep=&@>&DZA$GSK%rP` z-4o|$3+QGxjbG2>%*U(P*5Sq6jApx@-2ueKS^}Z4Y-%JO)Y6nXpF}%x{`+(^9OTy^mdMt+v=M$LvBV(Gb zWwY1Ply_~ciK5e2icAuPJ#i7Ao-CRY)~=D2iNzU{#=5gBKwIzgDYkay@Uf6$9o9;k zqW@_w$h$bjLD0y&VIKy+fC_s2^>(GAN7};L#1~%;Rqb*9ZBu3do?w6-(LnVUl#hAl zy=PCa(%4i%smHKhJIbH*xC5{%s4)00000NkvXXu0mjf4N6iT literal 0 HcmV?d00001 diff --git a/src-tauri/icons/ios/AppIcon-29x29@2x-1.png b/src-tauri/icons/ios/AppIcon-29x29@2x-1.png new file mode 100644 index 0000000000000000000000000000000000000000..b381a3d6681f1b2785598762545c8b28042ffcb9 GIT binary patch literal 2656 zcmV-m3ZM0fP)aVI&q?Rf|Bu(11f))}W4yaUV8`02E69S5ZF<`I3U>nS?AMCEzyLUQg?)%=kckkNk z2q}zxJ?x!(XXl%9&Uen783L3Q_#Bh~d``+OpiU*51vuLSaAin>kt+m1lH>+v0Fv!# z`KE+_DE}?7ofU~Hl>|-A0cdRY!>YUe5RUjt8aMH3qXQQJ-ai76V72;+wU!4<=cU%Z zN4eLrGyo4j7J`mt!SVn_3GUx5OHl-FUO<=7=c?5~`1aOlQ3<;O9k~p!=M8{VvNVvc zU`y=7OW*MY1b*;r6<6(&fg;G)UjdlT&H|*H>cRYg4MzZ;{aMTrtj|eZQIbNC)I%*$ z$#R3lTJ0BqGHD7sUrw=F@(vVjlB=sn5MFEJ;N}DL*fk0MxO2iAP-Ism9_x&in@MK{ z+JiQoIx!7>XQqn-MHf;`P38l%ComrS?0V~lJ5aREf%D$fWY%uOq1LW4Ok7`2&StA7 zpl3dTSrLI(Fs1Z8SFk6$v(6#l$Ylw?hm_(roZJV}eM1v=MeqinQ(K?t;URp8lqFo-_FM=SE%uibk0Q`t|8ipXk(S||OM^2mWK z0__h@%DN2^{@hbrD>+zsg7mSa(*?Mc$TL5gD+;FGQS4Hk6O(UpLg@l>8YCuw)6(~KKt9_@P~1@PLA6jaCkMt;=)u;1qP zAl$V&46zzNG`9v})0QeY__xVYRaX+)r7B4r{A)Y1K!_UwP-XmPkc(S=P`A(z)iIwk z83njHT!6uWyg{AuK7~|jM*DuE5|Z*AiT)f5Q>WlZFVu3do3>QLfxn7elH>wZ0J3d~ z=5v`O3tZheb!%XW0ie{$iRc^D|y?p6(Q*TBwMO`G1scfV!1k6kZppfqLMF>geyXXyNV^96|T016R`Qo z7+-O`!^kD8*eFpZuAwms@!LaiZ8XEaKLaWik6g)XecWE_o4b3_TnLg(Mo}U`JZjXx z3g!}@-c|`QgRPzTZ-%Mq42%xT1FUag4BHxjd+v+!&r6qwVCyphcy-4Z11qaPcH7ck z#oI$+Ka7rKIC#otI-4nIeb?3nN_Q_d^|iB=NmYrFQ&aCQl7y8EG*wM=@ zAuz5E&|tFyZ=uvy_u{kQbe$RM7<%adP?~Camr0V_oB<@NE4l@v)}Too+^45N5G*(@ z|J3y>v8th~CfeMKeJLf5oJ1h8sO|%8@mz0CYmdbVCmpm+z9hUd1N;7xg7Ktmk9|GU z{NBRGp!|#|PzMl>NgNAH#aA!ZD8oclVE2*g=ZX-RY}44jZbPL85(@%azp+Z!5>#V_ zsNyvN2!%ilQlM>Av|yK9R976xQwND!)P~)tuh&_2JSmylF^094=C%sc1g4U@%cy4) zVbdx>L}i|M>ZrcH;;R>nkx~IjrB00(4E~XrNoP231B&;IS%!FxK2a)YD@Z5zAxg!# zvaV<`YvWuhCV&YhMU_448~mpBqwkpmb|k4I?@kz2HdKpov28qAa0DqNNtbcEF4L%! znovDxuoD4FslZgy$JMfqfkpR$?SuU@uKOs%h0k3FhElMC(4Qiud*E$>T@9S!HTRyFLEF4R)n2A~Aj$mi{!=qF1?<3{7#=|lUILboHi0c~pb!TDZ$ z6oUJW9i5nO4MIzseBBHs(VvCAf4(X-AvO3Ax|c=Gej?gILqdA_S4nv9@Qs`1B-o+- z*WslX2N@AbLK1Cl4->~zDX5Mw{y1shk(MOckFjO@q82|aSm1}I)_{%K9G7);cAw4a zEE7?ppC!rI5-@RoT1m=bTE)I4xpQ|XL~rwpRTrthW2v8>JDVpaohQmsI93g@y^o8D z8Me`CNp{0L9I>I!fr=Z*Ee6EIsB5F2eZU-+ui(@;HD4{?3 zMGG+!kmo~>LxXwv{co<*Kx;ja+GO2;)WWy}t^INpQ|U;nx3>xCQj4DE|kJaVI&q?Rf|Bu(11f))}W4yaUV8`02E69S5ZF<`I3U>nS?AMCEzyLUQg?)%=kckkNk z2q}zxJ?x!(XXl%9&Uen783L3Q_#Bh~d``+OpiU*51vuLSaAin>kt+m1lH>+v0Fv!# z`KE+_DE}?7ofU~Hl>|-A0cdRY!>YUe5RUjt8aMH3qXQQJ-ai76V72;+wU!4<=cU%Z zN4eLrGyo4j7J`mt!SVn_3GUx5OHl-FUO<=7=c?5~`1aOlQ3<;O9k~p!=M8{VvNVvc zU`y=7OW*MY1b*;r6<6(&fg;G)UjdlT&H|*H>cRYg4MzZ;{aMTrtj|eZQIbNC)I%*$ z$#R3lTJ0BqGHD7sUrw=F@(vVjlB=sn5MFEJ;N}DL*fk0MxO2iAP-Ism9_x&in@MK{ z+JiQoIx!7>XQqn-MHf;`P38l%ComrS?0V~lJ5aREf%D$fWY%uOq1LW4Ok7`2&StA7 zpl3dTSrLI(Fs1Z8SFk6$v(6#l$Ylw?hm_(roZJV}eM1v=MeqinQ(K?t;URp8lqFo-_FM=SE%uibk0Q`t|8ipXk(S||OM^2mWK z0__h@%DN2^{@hbrD>+zsg7mSa(*?Mc$TL5gD+;FGQS4Hk6O(UpLg@l>8YCuw)6(~KKt9_@P~1@PLA6jaCkMt;=)u;1qP zAl$V&46zzNG`9v})0QeY__xVYRaX+)r7B4r{A)Y1K!_UwP-XmPkc(S=P`A(z)iIwk z83njHT!6uWyg{AuK7~|jM*DuE5|Z*AiT)f5Q>WlZFVu3do3>QLfxn7elH>wZ0J3d~ z=5v`O3tZheb!%XW0ie{$iRc^D|y?p6(Q*TBwMO`G1scfV!1k6kZppfqLMF>geyXXyNV^96|T016R`Qo z7+-O`!^kD8*eFpZuAwms@!LaiZ8XEaKLaWik6g)XecWE_o4b3_TnLg(Mo}U`JZjXx z3g!}@-c|`QgRPzTZ-%Mq42%xT1FUag4BHxjd+v+!&r6qwVCyphcy-4Z11qaPcH7ck z#oI$+Ka7rKIC#otI-4nIeb?3nN_Q_d^|iB=NmYrFQ&aCQl7y8EG*wM=@ zAuz5E&|tFyZ=uvy_u{kQbe$RM7<%adP?~Camr0V_oB<@NE4l@v)}Too+^45N5G*(@ z|J3y>v8th~CfeMKeJLf5oJ1h8sO|%8@mz0CYmdbVCmpm+z9hUd1N;7xg7Ktmk9|GU z{NBRGp!|#|PzMl>NgNAH#aA!ZD8oclVE2*g=ZX-RY}44jZbPL85(@%azp+Z!5>#V_ zsNyvN2!%ilQlM>Av|yK9R976xQwND!)P~)tuh&_2JSmylF^094=C%sc1g4U@%cy4) zVbdx>L}i|M>ZrcH;;R>nkx~IjrB00(4E~XrNoP231B&;IS%!FxK2a)YD@Z5zAxg!# zvaV<`YvWuhCV&YhMU_448~mpBqwkpmb|k4I?@kz2HdKpov28qAa0DqNNtbcEF4L%! znovDxuoD4FslZgy$JMfqfkpR$?SuU@uKOs%h0k3FhElMC(4Qiud*E$>T@9S!HTRyFLEF4R)n2A~Aj$mi{!=qF1?<3{7#=|lUILboHi0c~pb!TDZ$ z6oUJW9i5nO4MIzseBBHs(VvCAf4(X-AvO3Ax|c=Gej?gILqdA_S4nv9@Qs`1B-o+- z*WslX2N@AbLK1Cl4->~zDX5Mw{y1shk(MOckFjO@q82|aSm1}I)_{%K9G7);cAw4a zEE7?ppC!rI5-@RoT1m=bTE)I4xpQ|XL~rwpRTrthW2v8>JDVpaohQmsI93g@y^o8D z8Me`CNp{0L9I>I!fr=Z*Ee6EIsB5F2eZU-+ui(@;HD4{?3 zMGG+!kmo~>LxXwv{co<*Kx;ja+GO2;)WWy}t^INpQ|U;nx3>xCQj4DE|kJ9=l>elXs#r-? z{xGJJGKPo=UKJyy!INNwn8jlO5#-oi5Ec;Jm1WO4mYwOB_jUKo^y~9=PtPtS`(TQ< zL(lZrzyA9Be&6xlhA0~_I!ZD^qY#XOI|}aT7)Eg0KT{{RR-Kx@CAmD_{xsC`_&M`} zXFs?--2kn70gf<0j~t>fm{u=9>n|z(rM}OVe`sN@Ij6`x9HCG*F9fsMYr!QU7&pNm zz)7)e0l|E4b3sc*F2)yNO+fVmtl50d{19BTD$KOHY-GSiQ2)6RpyQgtlfxMfq496WHw zJGe->JbPP8g+X&WFDb|_Zusl340r<;N>K`{|%c0kVVaqUS%je+b$R47vvw zLs~ZgmYfBMfK0vJ{9@#N4PB!|V`vRY?R!ezL!aL12kh%mV6)bM7tYNiob z)fk4^bBj+>@A>!)Y5M~=TRt`s64_2#Qdt{gLdVvqqIg^!xj?92i6yL6hYczZ}C{9!PT;O0(jN@Gk; zj9@NY9DoZNf)F2144{dOL#-M1Dgdj`9q@qj7fj?o0GOp}J5UC5&o9sa|7FXg^2=#- zeVLUbtxtBO;lux=6>WD3a?zTrKiSMWfW|dp1}O1tAJH73*5(`#!LO1e6|$V-6N?K| zewI{_-(uQ3V`hk%2X{Ak!la=5np+=+E3d79^?&MtHkOzX)nqff8?e({d*e@G>B<1y z_h50r=FCAFOD81v#7L?Yp_)e-Uy^KCi2NR#6Dl7@^ZhxLm0+^WJS2*eXTqcqJpAZH z26EJOMouiBYinO6rm+FI;Ty$ydeqnt-W!C2EkmlKlX!U!;IMkMv!ODMzs3#^`&@}2O-+2PswmV)<2`1G9VQf_pCRc~@-`n{` z2Ksul>|aTxSA{#5CvYaTOLlymwijgVIGKSjP7FZ%;WI2^jB_Sp$%+`f^X7n04$XmT z&78vnyQ_H!K0BCIY$OGZ$LHx1$v;Y<*h>P1FjWKW*s1_5T@jWa$*Q<@^w!&xg=0sC zVB6Ld^ma@9`G}-|M^%fg-egM5`75Z>weA~)=50w%gXb|Pmjl;QdrdrA$h6ziAxl&{ zl{eK0tbB~5y#T_0A<=+L%y}yY09Sl10vBE!7P5&5eAOjE)|nWAPj{sm014TS(}FQ5 z%!%sws0p3Zv4EC+X%5_J=au=)b8SLBJ&%=%zYMI_rcnbwu@(+sQgr}sy}J@3k$@-X zg8$w1FYNd*#RIDmu9v;POBS9iD#3hJ`1yG_1A5ZyQ9yAlx)jTEzFzpjA zOIJh;Y+xq?^lyLZlbL{4!_5{nP!;4C*Y&`jT`At#jSIr^D=Q68+o84|Mz{Ll__2Q2 zyXO>~k+qicxeF>;ngmf`?ZaOS)?jVGsgUE!jj>gP@#P5j4V@hsc=zq3?gFfV)z078 z(8tUG?}!#JjltM>fTM%i3}uci0ms|>A(_Zn$V(h;t#`BF)}dKysYTSqzG%^95rd6= z>(zdHV5xnp(Q6D~{ZJ^CUNc2x6mw`4JOmMLOB!x~1$l`QA3kr}nq-=n1+#m&Y-N?=AFjS(O#ZX@xy`SOqz(o0@lM5BKX|U)@gl%t z1g5vO=)}yl^|pJeSPHS=;j3%PW$?nfZs2G&8yz~+5FZzk?Qc(a#yWLqzsgOl zBfVs1!HQ~8b9;&QRzEsVW(~kDxFpO0s~t0DmCK11Jq0{^*x1%7+g;OZ;zf7jt#0X9 zKnPfB6^~nMtDPg#C$jT=RCoM>izD_?*}|x)x#~DMWC$({*8%!6k%Kn+#dAg4i|l|k zBr0@5VBnz7>zdsNZL!g8gu}$>2Pic}aMiVCx+Dvjmyam5R9m;eT8F>Ymn1|z&c#3ivYrw=ekW)*a7QAU62KsQLP>CC&9jT zDFtQ*9-Wxu@@hYTHKBv99GY8TMLN0j(U)dS&!zP=g0`}*?d=u-H@}}?EkuJHA;!-l zivYtKx*;)OZP&d!xA7OvbG_Bv_`m=|R&-*D#^(5FxsoH$o%5YH`=On^KacTMq;Gg* zb~BAtSblHI?L2`0vVj8PG9xDfW zuYLnd6_!VIn^TxxfRQFfm{VN!%{cHYKPA|`BMCsMkc`fegngfxaLUn3=3Nw6nSQYz z;O!q6Gg%72M2Cm&vDV#u1orC;SiK|rsA)jyhj5c{q1L;RxTRwuKY*pWSdupj)*6n^ z3T^G=nleo>Fd|1~8(!#=%sws0HrqgLdmYG9U`%9)6#|Ij5@50+o$uEdV40PQO}Fz2=>5Ts_s z77zp+n(3wvr?PTmac)eS9AYJ!p~5poM7y_*jG&o0xjj3R(7XnZlX||z*7Tmh?%M@^_rvC55d8rlKpz_Wn z&D#=rO{}gBaT&5yiWW?W$eJ?|jny1gzkqj=M-LCW53Ia6G&}*eeAa2UgSz~R80+dD zWVTcB=u{#~Q-+NhFm(hL=ltTtP*KSjCt#`Cw1>B^rna2*b85USO^;_Bzz>27g{XhqAsbE*zpEnskU99AR}6`CCkUcz2C3qt}B_y z!rTAo_SF1rx;xX4zSnL0SWB#~->|R@zWY$z!fR)28;_}NnMi<6i~S&cesrF-Q_ags zk3aS~Yfc$(w6)K@Rxf52SU5@94n)M-K~NU6pJ59#Ql^VJ&_@0*jQ8H@Wg&XMW^IN! zu&hzfG}~ip7G}>6ID32cRnM;NgO{J{H<*ZXeV{3Lc5Med`S?kp$ZY29h`2+WJFlGV z{W#;mc@^6AuT2SgdC}@S$G}w9tUO`jxvRBExv(U(er+dw$=DB9p|fEM^$js1Y;(K2 zvha(a^w?@Im85+0nzk)8%B%!}Y}FUwm*dj&Ick|BaOS-De*0mz_H01yey5;m(8hHe z0b6;0yRMFL{ct9gJc@{;~96ONJOVHjkDp9H;^XXh6PQ zR24e+zIHBaiDosVr+F?C)XZhjEY2xB2kraBaan5pf+)S9p^|vowC%cEVq{qN1oL6* zs^OH^PHP>(MeSXAb(H!lw9h+(4lBqSd9S~D0%~n>8)Y`$QAwsu4^dY_d)T__tl7g% zK=v84!}MGC*AQQ}c>Uo|<0L*&n@gre@BKBRAQvG!0{gRH&mz9)cW4?HrB#43XR?^%vv?&H7gqMskjk`dbz%x635R%1nh^}O5uOV9Pv zEpH`B$u?d)%QlTi=OtoeefvETZLIZ(E%2ahHw{wCP1r{gWaP0(x13l($$rBLg1m7< zFJ&PwDfw?TDK*GGf$AH$xzUB2?=+{OWq+Es>`gQKOvzaZvdPV74x83r6oU&JD#%xs zjWJEaj3~Hfqjg`}y6s7@fM8eV7W$0CvGolVrMmpmf(xU+4{daef;$TC=+KV;0zw=O URC$)x`v3p{07*qoM6N<$f;W}LEC2ui literal 0 HcmV?d00001 diff --git a/src-tauri/icons/ios/AppIcon-40x40@1x.png b/src-tauri/icons/ios/AppIcon-40x40@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..9b887950fd51b7285c53bf67c24eb4979f8440ae GIT binary patch literal 1761 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 Y|MoYP?CbfX^Z)<=07*qoM6N<$f|(&gZ2$lO literal 0 HcmV?d00001 diff --git a/src-tauri/icons/ios/AppIcon-512@2x.png b/src-tauri/icons/ios/AppIcon-512@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e00ec4819bdce34c962b1f0da0eaa38ec9800d11 GIT binary patch literal 63142 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 LH>9oGbL#&91Eq{X literal 0 HcmV?d00001 diff --git a/src-tauri/icons/ios/AppIcon-60x60@2x.png b/src-tauri/icons/ios/AppIcon-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..3e9fcc3e63fdbc2baf540f48683aa0839bd4827b GIT binary patch literal 5838 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 Y|MoYP?CbfX^Z)<=07*qoM6N<$f|(&gZ2$lO literal 0 HcmV?d00001 diff --git a/src-tauri/icons/ios/AppIcon-60x60@3x.png b/src-tauri/icons/ios/AppIcon-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..e53846a7e8b473a259cc2536c2f30e42ba949938 GIT binary patch literal 9037 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 literal 0 HcmV?d00001 diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs new file mode 100644 index 0000000..f8da8ec --- /dev/null +++ b/src-tauri/src/lib.rs @@ -0,0 +1,202 @@ +use base64::{engine::general_purpose::STANDARD, Engine}; +use image::{DynamicImage, ImageFormat, RgbaImage}; +use serde::{Deserialize, Serialize}; +use std::{io::Cursor, sync::Mutex}; +use tauri::{ + image::Image, + menu::{Menu, MenuItem}, + tray::TrayIconBuilder, + AppHandle, Manager, PhysicalPosition, PhysicalSize, WebviewUrl, WebviewWindowBuilder, +}; +use tauri_plugin_clipboard_manager::ClipboardExt; +use tauri_plugin_dialog::DialogExt; +use tauri_plugin_global_shortcut::{GlobalShortcutExt, ShortcutState}; +use xcap::Monitor; + +struct RuntimeState { + shortcut: Mutex, + last_capture: Mutex>, +} + +struct CaptureCache { + image: RgbaImage, + x: i32, + y: i32, + scale_factor: f64, +} + +#[derive(Serialize)] +#[serde(rename_all = "camelCase")] +struct CapturePayload { + data_url: String, + x: i32, + y: i32, + width: u32, + height: u32, + scale_factor: f64, +} + +#[derive(Deserialize)] +struct Rect { + x: f64, + y: f64, + width: f64, + height: f64, +} + +fn rgba_to_png(image: &RgbaImage) -> Result, String> { + let mut bytes = Cursor::new(Vec::new()); + DynamicImage::ImageRgba8(image.clone()) + .write_to(&mut bytes, ImageFormat::Png) + .map_err(|e| e.to_string())?; + Ok(bytes.into_inner()) +} + +#[tauri::command] +fn capture_primary_screen(state: tauri::State) -> Result { + let guard = state.last_capture.lock().map_err(|_| "截图状态不可用")?; + let cached = guard.as_ref().ok_or_else(|| "没有准备好的截图".to_string())?; + let (width, height) = cached.image.dimensions(); + let png = rgba_to_png(&cached.image)?; + Ok(CapturePayload { + data_url: format!("data:image/png;base64,{}", STANDARD.encode(png)), + x: cached.x, + y: cached.y, + width, + height, + scale_factor: cached.scale_factor, + }) +} + +fn prepare_primary_capture(app: &AppHandle) -> Result<(), String> { + let monitor = Monitor::all() + .map_err(|e| e.to_string())? + .into_iter() + .find(|m| m.is_primary().unwrap_or(false)) + .ok_or_else(|| "未找到主显示器".to_string())?; + let image = monitor.capture_image().map_err(|e| e.to_string())?; + let cache = CaptureCache { + image, + x: monitor.x().unwrap_or(0), + y: monitor.y().unwrap_or(0), + scale_factor: monitor.scale_factor().unwrap_or(1.0) as f64, + }; + let state = app.state::(); + *state.last_capture.lock().map_err(|_| "截图状态不可用")? = Some(cache); + Ok(()) +} + +#[tauri::command] +fn start_capture(app: AppHandle) -> Result<(), String> { + if let Some(window) = app.get_webview_window("capture") { + window.close().map_err(|e| e.to_string())?; + } + if let Some(main) = app.get_webview_window("main") { + let _ = main.hide(); + } + + // Capture before creating the overlay. Capturing after the overlay appears + // records the white WebView surface and can leave an unusable topmost window. + std::thread::sleep(std::time::Duration::from_millis(80)); + prepare_primary_capture(&app)?; + + let monitor = app.primary_monitor().map_err(|e| e.to_string())?.ok_or("未找到主显示器")?; + let position = monitor.position(); + let size = monitor.size(); + let window = WebviewWindowBuilder::new(&app, "capture", WebviewUrl::App("index.html?mode=capture".into())) + .title("Snaplet Capture") + .decorations(false) + .transparent(false) + .always_on_top(true) + .skip_taskbar(true) + .resizable(false) + .visible(false) + .position(position.x as f64, position.y as f64) + .inner_size(size.width as f64 / monitor.scale_factor(), size.height as f64 / monitor.scale_factor()) + .build() + .map_err(|e| e.to_string())?; + window.set_position(PhysicalPosition::new(position.x, position.y)).map_err(|e| e.to_string())?; + window.set_size(PhysicalSize::new(size.width, size.height)).map_err(|e| e.to_string())?; + Ok(()) +} + +#[tauri::command] +fn finish_capture( + app: AppHandle, + state: tauri::State, + rect: Rect, + action: String, + copy_after_capture: bool, +) -> Result<(), String> { + let guard = state.last_capture.lock().map_err(|_| "截图状态不可用")?; + let source = &guard.as_ref().ok_or("没有可用的截图")?.image; + let capture_window = app.get_webview_window("capture").ok_or("截图窗口已关闭")?; + let scale = capture_window.scale_factor().map_err(|e| e.to_string())?; + let x = (rect.x * scale).round().max(0.0) as u32; + let y = (rect.y * scale).round().max(0.0) as u32; + let width = (rect.width * scale).round().max(1.0) as u32; + let height = (rect.height * scale).round().max(1.0) as u32; + let width = width.min(source.width().saturating_sub(x)); + let height = height.min(source.height().saturating_sub(y)); + let cropped = image::imageops::crop_imm(source, x, y, width, height).to_image(); + + if action == "copy" || copy_after_capture { + app.clipboard().write_image(&Image::new_owned(cropped.as_raw().clone(), width, height)).map_err(|e| e.to_string())?; + } + if action == "save" { + let bytes = rgba_to_png(&cropped)?; + app.dialog().file().set_file_name("Snaplet.png").add_filter("PNG 图片", &["png"]).save_file(move |path| { + if let Some(path) = path { let _ = std::fs::write(path.as_path().unwrap(), bytes); } + }); + } + Ok(()) +} + +#[tauri::command] +fn set_shortcut(app: AppHandle, state: tauri::State, shortcut: String) -> Result<(), String> { + let mut current = state.shortcut.lock().map_err(|_| "快捷键状态不可用")?; + if *current == shortcut && app.global_shortcut().is_registered(shortcut.as_str()) { + return Ok(()); + } + let _ = app.global_shortcut().unregister(current.as_str()); + app.global_shortcut().register(shortcut.as_str()).map_err(|e| e.to_string())?; + *current = shortcut; + Ok(()) +} + +pub fn run() { + tauri::Builder::default() + .plugin(tauri_plugin_dialog::init()) + .plugin(tauri_plugin_clipboard_manager::init()) + .plugin(tauri_plugin_global_shortcut::Builder::new().with_handler(|app, _, event| { + if event.state == ShortcutState::Pressed { let _ = start_capture(app.clone()); } + }).build()) + .plugin(tauri_plugin_autostart::Builder::new().build()) + .manage(RuntimeState { shortcut: Mutex::new("Alt+Shift+A".into()), last_capture: Mutex::new(None) }) + .setup(|app| { + let show = MenuItem::with_id(app, "show", "打开设置", true, None::<&str>)?; + let capture = MenuItem::with_id(app, "capture", "开始截图", true, None::<&str>)?; + let quit = MenuItem::with_id(app, "quit", "退出 Snaplet", true, None::<&str>)?; + let menu = Menu::with_items(app, &[&capture, &show, &quit])?; + let mut tray = TrayIconBuilder::new().menu(&menu).tooltip("Snaplet 截图"); + if let Some(icon) = app.default_window_icon() { + tray = tray.icon(icon.clone()); + } + tray.on_menu_event(|app, event| match event.id.as_ref() { + "capture" => { let _ = start_capture(app.clone()); } + "show" => { if let Some(w) = app.get_webview_window("main") { let _ = w.show(); let _ = w.set_focus(); } } + "quit" => app.exit(0), + _ => {} + }).build(app)?; + app.global_shortcut().register("Alt+Shift+A")?; + Ok(()) + }) + .on_window_event(|window, event| { + if window.label() == "main" { + if let tauri::WindowEvent::CloseRequested { api, .. } = event { api.prevent_close(); let _ = window.hide(); } + } + }) + .invoke_handler(tauri::generate_handler![start_capture, capture_primary_screen, finish_capture, set_shortcut]) + .run(tauri::generate_context!()) + .expect("failed to run Snaplet"); +} diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs new file mode 100644 index 0000000..e9b4046 --- /dev/null +++ b/src-tauri/src/main.rs @@ -0,0 +1,5 @@ +#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] + +fn main() { + snaplet_lib::run(); +} diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json new file mode 100644 index 0000000..03d8f26 --- /dev/null +++ b/src-tauri/tauri.conf.json @@ -0,0 +1,39 @@ +{ + "$schema": "https://schema.tauri.app/config/2", + "productName": "Snaplet", + "version": "0.1.0", + "identifier": "com.snaplet.capture", + "build": { + "beforeDevCommand": "npm run dev", + "devUrl": "http://localhost:1420", + "beforeBuildCommand": "npm run build", + "frontendDist": "../dist" + }, + "app": { + "windows": [{ + "label": "main", + "title": "Snaplet", + "width": 980, + "height": 700, + "minWidth": 760, + "minHeight": 560, + "center": true, + "resizable": true + }], + "security": { "csp": null } + }, + "bundle": { + "active": true, + "targets": "all", + "icon": [ + "icons/32x32.png", + "icons/128x128.png", + "icons/128x128@2x.png", + "icons/icon.icns", + "icons/icon.ico" + ], + "category": "Utility", + "shortDescription": "轻量、快速、顺手的截图工具", + "windows": { "webviewInstallMode": { "type": "skip" } } + } +} diff --git a/src/App.tsx b/src/App.tsx new file mode 100644 index 0000000..fa0e4d0 --- /dev/null +++ b/src/App.tsx @@ -0,0 +1,142 @@ +import { useEffect, useState } from "react"; +import { invoke } from "@tauri-apps/api/core"; +import { enable, disable, isEnabled } from "@tauri-apps/plugin-autostart"; +import { Camera, Check, ChevronRight, Copy, FolderOpen, Keyboard, MonitorUp, Power, Settings2, Sparkles } from "lucide-react"; +import CaptureOverlay from "./CaptureOverlay"; +import type { AppSettings } from "./types"; + +const defaults: AppSettings = { + shortcut: "Alt+Shift+A", + launchAtLogin: false, + copyAfterCapture: true, + showCursor: false, + saveDirectory: "图片/Snaplet" +}; + +const isTauri = "__TAURI_INTERNALS__" in window; + +export default function App() { + const overlay = new URLSearchParams(location.search).get("mode") === "capture"; + const [settings, setSettings] = useState(() => { + try { return { ...defaults, ...JSON.parse(localStorage.getItem("snaplet-settings") ?? "{}") }; } + catch { return defaults; } + }); + const [saved, setSaved] = useState(false); + const [recordingShortcut, setRecordingShortcut] = useState(false); + const [shortcutCandidate, setShortcutCandidate] = useState(""); + const [shortcutError, setShortcutError] = useState(""); + + useEffect(() => { + if (overlay || !isTauri) return; + isEnabled().then((value) => setSettings((s) => ({ ...s, launchAtLogin: value }))).catch(() => undefined); + invoke("set_shortcut", { shortcut: settings.shortcut }).catch(() => undefined); + }, [overlay, settings.shortcut]); + + const persist = async (next: AppSettings) => { + if (isTauri && next.shortcut !== settings.shortcut) { + await invoke("set_shortcut", { shortcut: next.shortcut }); + } + setSettings(next); + localStorage.setItem("snaplet-settings", JSON.stringify(next)); + setSaved(true); + setTimeout(() => setSaved(false), 1200); + if (!isTauri) return; + if (next.launchAtLogin !== settings.launchAtLogin) { + await (next.launchAtLogin ? enable() : disable()); + } + }; + + useEffect(() => { + if (!recordingShortcut) return; + const record = (event: KeyboardEvent) => { + event.preventDefault(); + event.stopPropagation(); + if (event.key === "Escape") { setRecordingShortcut(false); return; } + if (["Control", "Alt", "Shift", "Meta"].includes(event.key)) return; + const modifiers = [event.ctrlKey && "Ctrl", event.altKey && "Alt", event.shiftKey && "Shift", event.metaKey && "Super"].filter(Boolean); + if (!modifiers.length) { setShortcutError("快捷键至少需要 Ctrl、Alt、Shift 或 Win 中的一个"); return; } + const special: Record = { " ": "Space", ArrowUp: "Up", ArrowDown: "Down", ArrowLeft: "Left", ArrowRight: "Right" }; + const key = special[event.key] ?? (event.key.length === 1 ? event.key.toUpperCase() : event.key); + setShortcutCandidate([...modifiers, key].join("+")); + setShortcutError(""); + }; + addEventListener("keydown", record, true); + return () => removeEventListener("keydown", record, true); + }, [recordingShortcut]); + + const confirmShortcut = async () => { + if (!shortcutCandidate) return; + try { + await persist({ ...settings, shortcut: shortcutCandidate }); + setRecordingShortcut(false); + } catch (reason) { + setShortcutError(`无法注册:${String(reason)}`); + } + }; + + if (overlay) return ; + + const startCapture = () => isTauri ? invoke("start_capture") : alert("桌面版中会立即进入截图模式"); + + return ( +

+ + +
+

常规设置

让每一次截图都快速、安静、顺手。

+ +
+
+

随时准备捕捉

使用快捷键呼出截图界面,无需打开主窗口。

+ {settings.shortcut.replaceAll("+", " + ")} +
+ +
启动与行为
+
+ } title="开机时自动启动" description="静默驻留系统托盘,不打扰工作"> + persist({ ...settings, launchAtLogin: v })} /> + + } title="截图后复制到剪贴板" description="完成框选后可以直接粘贴"> + persist({ ...settings, copyAfterCapture: v })} /> + +
+ +
截图偏好
+
+ } title="截图快捷键" description="点击右侧组合键即可修改"> + + + } title="默认保存位置" description={settings.saveDirectory}> + + +
+
{saved ? <>设置已保存 : "Snaplet 0.1.0 · Windows Preview"}
+
+ {recordingShortcut &&
setRecordingShortcut(false)}> +
e.stopPropagation()}> +

设置截图快捷键

+

请直接按下新的组合键

+
{shortcutCandidate || "等待按键…"}
+ {shortcutError || "按 Esc 取消"} +
+
+
} +
+ ); +} + +function SettingRow({ icon, title, description, children }: { icon: React.ReactNode; title: string; description: string; children: React.ReactNode }) { + return
{icon}
{title}{description}
{children}
; +} + +function Toggle({ checked, onChange }: { checked: boolean; onChange: (value: boolean) => void }) { + return ; +} diff --git a/src/CaptureOverlay.tsx b/src/CaptureOverlay.tsx new file mode 100644 index 0000000..35fc0ef --- /dev/null +++ b/src/CaptureOverlay.tsx @@ -0,0 +1,87 @@ +import { useCallback, useEffect, useRef, useState } from "react"; +import { invoke } from "@tauri-apps/api/core"; +import { getCurrentWindow } from "@tauri-apps/api/window"; +import { Check, Copy, Download, MousePointer2, X } from "lucide-react"; +import type { AppSettings, CapturePayload } from "./types"; + +type Point = { x: number; y: number }; +type Rect = { x: number; y: number; width: number; height: number }; + +export default function CaptureOverlay({ settings }: { settings: AppSettings }) { + const [image, setImage] = useState(null); + const [start, setStart] = useState(null); + const [current, setCurrent] = useState(null); + const [dragging, setDragging] = useState(false); + const [error, setError] = useState(""); + const canvas = useRef(null); + + const close = useCallback(() => { + if ("__TAURI_INTERNALS__" in window) getCurrentWindow().close(); + }, []); + + useEffect(() => { + const key = (event: KeyboardEvent) => { + if (event.key === "Escape") { event.preventDefault(); close(); } + }; + addEventListener("keydown", key, true); + if ("__TAURI_INTERNALS__" in window) { + invoke("capture_primary_screen").then(setImage).catch((reason) => { + setError(String(reason)); + setTimeout(close, 1200); + }); + } + return () => removeEventListener("keydown", key, true); + }, [close]); + + useEffect(() => { + if (!image || !canvas.current) return; + const img = new Image(); + img.onload = () => { + const ctx = canvas.current!.getContext("2d")!; + canvas.current!.width = innerWidth * devicePixelRatio; + canvas.current!.height = innerHeight * devicePixelRatio; + ctx.drawImage(img, 0, 0, canvas.current!.width, canvas.current!.height); + requestAnimationFrame(() => { + getCurrentWindow().show().then(() => getCurrentWindow().setFocus()).catch(close); + }); + }; + img.onerror = () => { setError("截图画面加载失败"); setTimeout(close, 1200); }; + img.src = image.dataUrl; + }, [image, close]); + + const rect: Rect | null = start && current ? { + x: Math.min(start.x, current.x), y: Math.min(start.y, current.y), + width: Math.abs(current.x - start.x), height: Math.abs(current.y - start.y) + } : null; + + const finish = async (action: "copy" | "save") => { + if (!rect || rect.width < 2 || rect.height < 2) return; + await invoke("finish_capture", { rect, action, copyAfterCapture: settings.copyAfterCapture }); + close(); + }; + + return ( +
{ e.preventDefault(); close(); }} + onPointerDown={(e) => { setStart({ x: e.clientX, y: e.clientY }); setCurrent({ x: e.clientX, y: e.clientY }); setDragging(true); }} + onPointerMove={(e) => dragging && setCurrent({ x: e.clientX, y: e.clientY })} + onPointerUp={(e) => { if (dragging) setCurrent({ x: e.clientX, y: e.clientY }); setDragging(false); }}> + + {!rect &&
} + {rect && <> +
+
{Math.round(rect.width)} × {Math.round(rect.height)}
+ {!dragging && rect.width > 2 &&
e.stopPropagation()}> + + + + + +
} + } + {!rect &&
拖动鼠标选择截图区域 · Esc 取消
} + {error &&
{error},正在退出…
} +
+ ); +} diff --git a/src/main.tsx b/src/main.tsx new file mode 100644 index 0000000..3bded79 --- /dev/null +++ b/src/main.tsx @@ -0,0 +1,8 @@ +import React from "react"; +import ReactDOM from "react-dom/client"; +import App from "./App"; +import "./styles.css"; + +ReactDOM.createRoot(document.getElementById("root")!).render( + +); diff --git a/src/styles.css b/src/styles.css new file mode 100644 index 0000000..df97923 --- /dev/null +++ b/src/styles.css @@ -0,0 +1,56 @@ +:root { font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif; color: #20232a; background: #f5f6f8; font-synthesis: none; } +* { box-sizing: border-box; } +html, body, #root { width: 100%; height: 100%; margin: 0; overflow: hidden; } +button { font: inherit; } +.settings-shell { width: 100%; height: 100%; display: grid; grid-template-columns: 220px 1fr; background: #f7f8fa; } +.sidebar { display: flex; flex-direction: column; padding: 28px 18px 20px; background: rgba(255,255,255,.92); border-right: 1px solid #e9ebef; } +.brand { display: flex; align-items: center; gap: 11px; padding: 0 10px 30px; font-size: 18px; font-weight: 700; letter-spacing: -.3px; } +.brand-mark { width: 34px; height: 34px; display: grid; place-items: center; color: white; border-radius: 11px; background: linear-gradient(145deg,#7667f4,#5d50db); box-shadow: 0 8px 18px #675ae244; } +nav { display: grid; gap: 7px; } +.nav-item { border: 0; border-radius: 10px; background: transparent; color: #737781; padding: 11px 12px; display: flex; align-items: center; gap: 11px; text-align: left; cursor: pointer; } +.nav-item.active { color: #5f52d9; background: #f0edff; font-weight: 600; } +.sidebar-foot { margin-top: auto; padding: 12px; font-size: 12px; color: #8a8f99; display: flex; align-items: center; gap: 8px; } +.status-dot { width: 7px; height: 7px; border-radius: 50%; background: #42c97a; box-shadow: 0 0 0 4px #42c97a18; } +.settings-content { overflow: auto; padding: 42px 52px 28px; } +.settings-content > header { display: flex; justify-content: space-between; align-items: center; max-width: 780px; } +h1 { margin: 0 0 8px; font-size: 27px; letter-spacing: -.7px; } +header p, .hero-card p { margin: 0; color: #8b909a; font-size: 14px; } +.capture-button { display: flex; align-items: center; gap: 8px; border: 0; color: white; background: #6558df; padding: 10px 16px; border-radius: 10px; cursor: pointer; box-shadow: 0 7px 18px #6558df35; } +.hero-card { max-width: 780px; margin-top: 32px; padding: 22px; border-radius: 16px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; color: #fff; background: linear-gradient(125deg,#6256da,#7b6be9); box-shadow: 0 14px 34px #6a5ee42c; } +.hero-card h2 { margin: 0 0 6px; font-size: 17px; } +.hero-card p { color: #e5e2ff; } +.hero-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 12px; background: #ffffff1d; } +kbd { padding: 10px 13px; border-radius: 9px; background: #4338a454; border: 1px solid #ffffff2b; font: 600 12px Inter, sans-serif; } +.section-label { max-width: 780px; margin: 28px 0 10px; color: #8e939d; font-size: 12px; font-weight: 600; letter-spacing: .4px; } +.card { max-width: 780px; background: white; border: 1px solid #e9ebef; border-radius: 14px; box-shadow: 0 4px 18px #30384d08; } +.setting-row { min-height: 76px; display: flex; align-items: center; padding: 15px 18px; gap: 14px; } +.setting-row + .setting-row { border-top: 1px solid #eef0f3; } +.row-icon { width: 36px; height: 36px; flex: none; display: grid; place-items: center; color: #6b5ee0; background: #f1efff; border-radius: 10px; } +.row-icon svg { width: 18px; } +.row-copy { display: grid; gap: 5px; flex: 1; } +.row-copy strong { font-size: 14px; } +.row-copy span { color: #979ba4; font-size: 12px; } +.toggle { width: 42px; height: 24px; padding: 2px; border: 0; border-radius: 20px; background: #d8dbe1; cursor: pointer; transition: .2s; } +.toggle span { display: block; width: 20px; height: 20px; border-radius: 50%; background: white; box-shadow: 0 2px 5px #0002; transition: .2s; } +.toggle.on { background: #6558df; }.toggle.on span { transform: translateX(18px); } +.value-button { display: flex; align-items: center; gap: 7px; border: 0; background: transparent; color: #626771; font-size: 12px; cursor: pointer; } +footer { max-width: 780px; min-height: 18px; display: flex; align-items: center; justify-content: center; gap: 5px; margin-top: 25px; color: #a1a5ad; font-size: 11px; } +.capture-overlay { position: fixed; inset: 0; cursor: crosshair; user-select: none; background: #191b20; } +.capture-overlay canvas { position: absolute; inset: 0; width: 100%; height: 100%; } +.dim-layer { position: absolute; inset: 0; background: rgba(4,6,10,.45); pointer-events: none; } +.selection { position: absolute; border: 1px solid #7d6dff; background: transparent; box-shadow: 0 0 0 9999px rgba(4,6,10,.42); outline: 1px solid #ffffff55; } +.selection::before { content: ""; position: absolute; inset: 0; background: inherit; } +.size-badge { position: absolute; padding: 5px 8px; border-radius: 6px; background: rgba(25,27,32,.86); color: white; font-size: 11px; } +.capture-toolbar { position: absolute; height: 44px; display: flex; align-items: center; gap: 3px; padding: 5px; border: 1px solid #ffffff20; border-radius: 11px; background: rgba(31,33,40,.94); box-shadow: 0 8px 30px #0006; backdrop-filter: blur(14px); } +.capture-toolbar button { width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 8px; color: #dfe1e7; background: transparent; cursor: pointer; } +.capture-toolbar button:hover { background: #ffffff15; }.capture-toolbar button.primary { color: white; background: #6b5de3; } +.capture-toolbar svg { width: 17px; }.capture-toolbar > span { height: 21px; width: 1px; margin: 0 3px; background: #ffffff1a; } +.capture-tip { position: absolute; left: 50%; top: 24px; transform: translateX(-50%); display: flex; align-items: center; gap: 8px; padding: 9px 13px; color: #fff; border-radius: 8px; background: rgba(27,29,34,.82); font-size: 12px; } +.capture-error { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); padding: 12px 16px; color: #fff; border-radius: 9px; background: #c53d4e; font-size: 13px; box-shadow: 0 10px 30px #0005; } +.shortcut-modal-backdrop { position: fixed; inset: 0; z-index: 20; display: grid; place-items: center; background: #17192355; backdrop-filter: blur(4px); } +.shortcut-modal { width: 380px; padding: 26px; border: 1px solid #e7e8ed; border-radius: 17px; background: #fff; box-shadow: 0 24px 70px #20243a2e; text-align: center; } +.shortcut-modal h3 { margin: 0 0 8px; font-size: 18px; }.shortcut-modal p { margin: 0 0 20px; color: #8d929c; font-size: 13px; } +.shortcut-recorder { height: 58px; display: grid; place-items: center; border: 2px solid #6b5de3; border-radius: 12px; color: #5d50d5; background: #f5f3ff; font-weight: 700; } +.shortcut-modal small { display: block; min-height: 18px; margin-top: 11px; color: #a0a4ad; }.shortcut-modal small.error { color: #c53d4e; } +.modal-actions { display: flex; justify-content: center; gap: 9px; margin-top: 18px; }.modal-actions button { border: 0; border-radius: 9px; padding: 9px 16px; cursor: pointer; }.modal-actions .confirm { color: white; background: #6558df; }.modal-actions .confirm:disabled { opacity: .45; cursor: default; } +@media (max-width: 720px) { .settings-shell { grid-template-columns: 72px 1fr; }.sidebar { padding-inline: 12px; }.brand > span:last-child,.nav-item { font-size: 0; }.nav-item { justify-content: center; }.sidebar-foot { display: none; }.settings-content { padding: 32px 25px; } } diff --git a/src/types.ts b/src/types.ts new file mode 100644 index 0000000..8d73ed0 --- /dev/null +++ b/src/types.ts @@ -0,0 +1,16 @@ +export type AppSettings = { + shortcut: string; + launchAtLogin: boolean; + copyAfterCapture: boolean; + showCursor: boolean; + saveDirectory: string; +}; + +export type CapturePayload = { + dataUrl: string; + x: number; + y: number; + width: number; + height: number; + scaleFactor: number; +}; diff --git a/src/vite-env.d.ts b/src/vite-env.d.ts new file mode 100644 index 0000000..11f02fe --- /dev/null +++ b/src/vite-env.d.ts @@ -0,0 +1 @@ +/// diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..da07adb --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "target": "ES2022", + "useDefineForClassFields": true, + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "allowJs": false, + "skipLibCheck": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "module": "ESNext", + "moduleResolution": "Bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + "jsx": "react-jsx" + }, + "include": ["src"], + "references": [{ "path": "./tsconfig.node.json" }] +} diff --git a/tsconfig.node.json b/tsconfig.node.json new file mode 100644 index 0000000..5eef90e --- /dev/null +++ b/tsconfig.node.json @@ -0,0 +1,10 @@ +{ + "compilerOptions": { + "composite": true, + "skipLibCheck": true, + "module": "ESNext", + "moduleResolution": "Bundler", + "allowImportingTsExtensions": true + }, + "include": ["vite.config.ts"] +} diff --git a/vite.config.ts b/vite.config.ts new file mode 100644 index 0000000..89a711b --- /dev/null +++ b/vite.config.ts @@ -0,0 +1,10 @@ +import { defineConfig } from "vite"; +import react from "@vitejs/plugin-react"; + +export default defineConfig({ + plugins: [react()], + clearScreen: false, + server: { port: 1420, strictPort: true }, + envPrefix: ["VITE_", "TAURI_ENV_*"], + build: { target: process.env.TAURI_ENV_PLATFORM === "windows" ? "chrome105" : "safari13" } +});