diff --git a/package.json b/package.json index d9216801..1ebe5f4a 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "qrcode.react": "^3.1.0", "react": "^18.2.0", "react-dom": "^18.2.0", - "react-hook-form": "^7.45.4", + "react-hook-form": "^7.46.0", "react-hotkeys-hook": "^4.4.1", "react-markdown": "^8.0.7", "react-player": "^2.12.0", @@ -70,7 +70,7 @@ "@tauri-apps/cli": "^1.4.0", "@trivago/prettier-plugin-sort-imports": "^4.2.0", "@types/html-to-text": "^9.0.1", - "@types/node": "^20.5.8", + "@types/node": "^20.5.9", "@types/react": "^18.2.21", "@types/react-dom": "^18.2.7", "@types/youtube-player": "^5.5.7", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 33f3d750..71f5b0bb 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -98,8 +98,8 @@ dependencies: specifier: ^18.2.0 version: 18.2.0(react@18.2.0) react-hook-form: - specifier: ^7.45.4 - version: 7.45.4(react@18.2.0) + specifier: ^7.46.0 + version: 7.46.0(react@18.2.0) react-hotkeys-hook: specifier: ^4.4.1 version: 4.4.1(react-dom@18.2.0)(react@18.2.0) @@ -154,8 +154,8 @@ devDependencies: specifier: ^9.0.1 version: 9.0.1 '@types/node': - specifier: ^20.5.8 - version: 20.5.8 + specifier: ^20.5.9 + version: 20.5.9 '@types/react': specifier: ^18.2.21 version: 18.2.21 @@ -233,7 +233,7 @@ devDependencies: version: 5.2.2 vite: specifier: ^4.4.9 - version: 4.4.9(@types/node@20.5.8) + version: 4.4.9(@types/node@20.5.9) vite-tsconfig-paths: specifier: ^4.2.0 version: 4.2.0(typescript@5.2.2)(vite@4.4.9) @@ -1647,7 +1647,7 @@ packages: dependencies: '@remirror/core-constants': 2.0.2 '@remirror/types': 1.0.1 - '@types/object.omit': 3.0.0 + '@types/object.omit': 3.0.1 '@types/object.pick': 1.3.2 '@types/throttle-debounce': 2.1.0 case-anything: 2.1.13 @@ -2343,16 +2343,16 @@ packages: resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} dev: false - /@types/node@20.5.8: - resolution: {integrity: sha512-eajsR9aeljqNhK028VG0Wuw+OaY5LLxYmxeoXynIoE6jannr9/Ucd1LL0hSSoafk5LTYG+FfqsyGt81Q6Zkybw==} + /@types/node@20.5.9: + resolution: {integrity: sha512-PcGNd//40kHAS3sTlzKB9C9XL4K0sTup8nbG5lC14kzEteTNuAFh9u5nA0o5TWnSG2r/JNPRXFVcHJIIeRlmqQ==} dev: true /@types/normalize-package-data@2.4.1: resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} dev: false - /@types/object.omit@3.0.0: - resolution: {integrity: sha512-I27IoPpH250TUzc9FzXd0P1BV/BMJuzqD3jOz98ehf9dQqGkxlq+hO1bIqZGWqCg5bVOy0g4AUVJtnxe0klDmw==} + /@types/object.omit@3.0.1: + resolution: {integrity: sha512-24XD34UeRWw505TsMNBrQ4bES2s8IxiFC59mmNUFhTz9IX2hAtA7gQ8wVww1i17QmhBYILg5iqYP2y7aqA3pwQ==} dev: false /@types/object.pick@1.3.2: @@ -2659,7 +2659,7 @@ packages: vite: ^4 dependencies: '@swc/core': 1.3.82 - vite: 4.4.9(@types/node@20.5.8) + vite: 4.4.9(@types/node@20.5.9) transitivePeerDependencies: - '@swc/helpers' dev: true @@ -2773,8 +2773,8 @@ packages: call-bind: 1.0.2 is-array-buffer: 3.0.2 - /array-includes@3.1.6: - resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} + /array-includes@3.1.7: + resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 @@ -3550,7 +3550,7 @@ packages: optional: true dependencies: '@typescript-eslint/parser': 5.62.0(eslint@8.48.0)(typescript@5.2.2) - array-includes: 3.1.6 + array-includes: 3.1.7 array.prototype.findlastindex: 1.2.3 array.prototype.flat: 1.3.1 array.prototype.flatmap: 1.3.1 @@ -3582,7 +3582,7 @@ packages: dependencies: '@babel/runtime': 7.22.11 aria-query: 5.3.0 - array-includes: 3.1.6 + array-includes: 3.1.7 array.prototype.flatmap: 1.3.1 ast-types-flow: 0.0.7 axe-core: 4.7.2 @@ -3605,7 +3605,7 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 dependencies: - array-includes: 3.1.6 + array-includes: 3.1.7 array.prototype.flatmap: 1.3.1 array.prototype.tosorted: 1.1.1 doctrine: 2.1.0 @@ -4433,7 +4433,7 @@ packages: resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} engines: {node: '>=4.0'} dependencies: - array-includes: 3.1.6 + array-includes: 3.1.7 array.prototype.flat: 1.3.1 object.assign: 4.1.4 object.values: 1.1.7 @@ -5652,8 +5652,8 @@ packages: object-assign: 4.1.1 react-is: 16.13.1 - /property-information@6.2.0: - resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} + /property-information@6.3.0: + resolution: {integrity: sha512-gVNZ74nqhRMiIUYWGQdosYetaKc83x8oT41a0LlV3AAFCAZwCpg4vmGkq8t34+cUhp3cnM4XDiU/7xlgK7HGrg==} dev: false /prosemirror-changeset@2.2.1: @@ -5833,8 +5833,8 @@ packages: resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==} dev: false - /react-hook-form@7.45.4(react@18.2.0): - resolution: {integrity: sha512-HGDV1JOOBPZj10LB3+OZgfDBTn+IeEsNOKiq/cxbQAIbKaiJUe/KV8DBUzsx0Gx/7IG/orWqRRm736JwOfUSWQ==} + /react-hook-form@7.46.0(react@18.2.0): + resolution: {integrity: sha512-sc22pXwuKgbWBR5/EYWOVoFw4i/w893tDRUgQY2/Xb7wlpajJBrqAMFhb4z1CDhZ0TSFFfX62+iKx3gCXnCHHw==} engines: {node: '>=12.22.0'} peerDependencies: react: ^16.8.0 || ^17 || ^18 @@ -5872,7 +5872,7 @@ packages: comma-separated-tokens: 2.0.3 hast-util-whitespace: 2.0.1 prop-types: 15.8.1 - property-information: 6.2.0 + property-information: 6.3.0 react: 18.2.0 react-is: 18.2.0 remark-parse: 10.0.2 @@ -6928,13 +6928,13 @@ packages: debug: 4.3.4 globrex: 0.1.2 tsconfck: 2.1.2(typescript@5.2.2) - vite: 4.4.9(@types/node@20.5.8) + vite: 4.4.9(@types/node@20.5.9) transitivePeerDependencies: - supports-color - typescript dev: true - /vite@4.4.9(@types/node@20.5.8): + /vite@4.4.9(@types/node@20.5.9): resolution: {integrity: sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true @@ -6962,7 +6962,7 @@ packages: terser: optional: true dependencies: - '@types/node': 20.5.8 + '@types/node': 20.5.9 esbuild: 0.18.20 postcss: 8.4.29 rollup: 3.28.1 diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index a48a5374..d0231114 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -288,7 +288,7 @@ checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -305,7 +305,7 @@ checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -746,7 +746,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -1060,7 +1060,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" dependencies = [ "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -1116,7 +1116,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -1127,7 +1127,7 @@ checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ "darling_core", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -1350,7 +1350,7 @@ checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -1519,7 +1519,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -1635,7 +1635,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -2651,9 +2651,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.6.2" +version = "2.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5486aed0026218e61b8a01d5fbd5a0a134649abb71a0e53b7bc088529dced86e" +checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" [[package]] name = "memoffset" @@ -2983,9 +2983,9 @@ dependencies = [ [[package]] name = "object" -version = "0.32.0" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ac5bbd07aea88c60a577a1ce218075ffd59208b2d7ca97adf9bfc5aeb21ebe" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "memchr", ] @@ -3035,7 +3035,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -3288,7 +3288,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -3654,13 +3654,13 @@ dependencies = [ [[package]] name = "regex" -version = "1.9.4" +version = "1.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29" +checksum = "697061221ea1b4a94a624f67d0ae2bfe4e22b8a17b6a192afb11046542cc8c47" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.3.7", + "regex-automata 0.3.8", "regex-syntax 0.7.5", ] @@ -3675,9 +3675,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629" +checksum = "c2f401f4955220693b56f8ec66ee9c78abffd8d1c4f23dc41a23839eb88f0795" dependencies = [ "aho-corasick", "memchr", @@ -4055,7 +4055,7 @@ checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -4077,7 +4077,7 @@ checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -4127,7 +4127,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -4720,9 +4720,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.29" +version = "2.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a" +checksum = "718fa2415bcb8d8bd775917a1bf12a7931b6dfa890753378538118181e0cb398" dependencies = [ "proc-macro2", "quote", @@ -5166,22 +5166,22 @@ checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c" [[package]] name = "thiserror" -version = "1.0.47" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f" +checksum = "9d6d7a740b8a666a7e828dd00da9c0dc290dff53154ea77ac109281de90589b7" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.47" +version = "1.0.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b" +checksum = "49922ecae66cc8a249b77e68d1d0623c1b2c514f0060c27cdc68bd62a1219d35" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -5262,7 +5262,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -5370,7 +5370,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] @@ -5639,7 +5639,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", "wasm-bindgen-shared", ] @@ -5673,7 +5673,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -6388,7 +6388,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.31", ] [[package]] diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index a42051bd..844453a6 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -16,7 +16,9 @@ tauri-build = { version = "1.4.0", features = [] } [dependencies] serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } -tauri = { version = "1.4.0", features = [ "fs-read-dir", "fs-read-file", +tauri = { version = "1.4.0", features = [ + "fs-read-dir", + "fs-read-file", "window-start-dragging", "path-all", "http-all", @@ -34,6 +36,9 @@ tauri = { version = "1.4.0", features = [ "fs-read-dir", "fs-read-file", "dialog-all", "macos-private-api", ] } +tauri-plugin-sql = { git = "hhttps://github.com/tauri-apps/plugins-workspace", branch = "v1", features = [ + "sqlite", +] } tauri-plugin-single-instance = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1" } tauri-plugin-autostart = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1" } tauri-plugin-stronghold = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1" } @@ -46,18 +51,10 @@ sqlx-cli = { version = "0.7.0", default-features = false, features = [ ] } rust-argon2 = "1.0" -[dependencies.tauri-plugin-sql] -git = "hhttps://github.com/tauri-apps/plugins-workspace" -branch = "v1" -features = ["sqlite"] - [features] -# by default Tauri runs in production mode -# when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL -default = ["custom-protocol"] -# this feature is used used for production builds where `devPath` points to the filesystem -# DO NOT remove this -custom-protocol = [] +# this feature is used for production builds or when `devPath` points to the filesystem +# DO NOT REMOVE!! +custom-protocol = ["tauri/custom-protocol"] # Optimized for bundle size. If you want faster builds comment out/delete this section. [profile.release] diff --git a/src-tauri/src/main.rs b/src-tauri/src/main.rs index 0dacb1d4..18e6bc3a 100644 --- a/src-tauri/src/main.rs +++ b/src-tauri/src/main.rs @@ -7,7 +7,9 @@ use tauri::Manager; use tauri_plugin_autostart::MacosLauncher; use tauri_plugin_sql::{Migration, MigrationKind}; use window_shadows::set_shadow; -use window_vibrancy::{apply_mica, apply_vibrancy, NSVisualEffectMaterial}; + +#[cfg(target_os = "macos")] +use window_vibrancy::{apply_vibrancy, NSVisualEffectMaterial}; #[derive(Clone, serde::Serialize)] struct Payload { @@ -27,6 +29,18 @@ async fn close_splashscreen(window: tauri::Window) { fn main() { tauri::Builder::default() + .setup(|app| { + let window = app.get_window("main").unwrap(); + + #[cfg(target_os = "macos")] + apply_vibrancy(&window, NSVisualEffectMaterial::HudWindow, None, None) + .expect("Unsupported platform! 'apply_vibrancy' is only supported on macOS"); + + // set native shadow + set_shadow(&window, true).expect("Unsupported platform!"); + + Ok(()) + }) .plugin( tauri_plugin_sql::Builder::default() .add_migrations( @@ -173,22 +187,6 @@ fn main() { .plugin(tauri_plugin_upload::init()) .plugin(tauri_plugin_store::Builder::default().build()) .invoke_handler(tauri::generate_handler![close_splashscreen]) - .setup(|app| { - let window = app.get_window("main").unwrap(); - - #[cfg(target_os = "macos")] - apply_vibrancy(&window, NSVisualEffectMaterial::HudWindow, None, None) - .expect("Unsupported platform! 'apply_vibrancy' is only supported on macOS"); - - #[cfg(target_os = "windows")] - apply_mica(&window, Some(true)) - .expect("Unsupported platform! 'apply_blur' is only supported on Windows"); - - // set native shadow - set_shadow(&window, true).expect("Unsupported platform!"); - - Ok(()) - }) .run(tauri::generate_context!()) .expect("error while running tauri application"); } diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 6fd9b783..e83ec1bf 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -124,7 +124,6 @@ "csp": { "content-security-policy": "upgrade-insecure-requests" } - }, - "macOSPrivateApi": true + } } } diff --git a/src-tauri/tauri.macos.conf.json b/src-tauri/tauri.macos.conf.json index 2abefcfb..15667f23 100644 --- a/src-tauri/tauri.macos.conf.json +++ b/src-tauri/tauri.macos.conf.json @@ -1,5 +1,6 @@ { "tauri": { + "macOSPrivateApi": true, "windows": [ { "width": 400, diff --git a/src-tauri/tauri.windows.conf.json b/src-tauri/tauri.windows.conf.json index 6a5172fc..319abf8d 100644 --- a/src-tauri/tauri.windows.conf.json +++ b/src-tauri/tauri.windows.conf.json @@ -19,7 +19,7 @@ "resizable": true, "theme": "Dark", "title": "Lume", - "transparent": true, + "transparent": false, "center": true, "fullscreen": false, "hiddenTitle": true, diff --git a/src/app/splash.tsx b/src/app/splash.tsx index 4a355139..374d02a2 100644 --- a/src/app/splash.tsx +++ b/src/app/splash.tsx @@ -49,11 +49,9 @@ export function SplashScreen() { }; useEffect(() => { - if (!db.account) { - invoke('close_splashscreen'); - } + if (ndk) { + if (!db.account) invoke('close_splashscreen'); - if (ndk && db.account) { console.log('prefetching...'); prefetch(); } diff --git a/src/shared/frame.tsx b/src/shared/frame.tsx index 01cf3586..cfa254ca 100644 --- a/src/shared/frame.tsx +++ b/src/shared/frame.tsx @@ -17,7 +17,6 @@ export function Frame({ const platformStyles = useCallback(() => { switch (db.platform) { case 'darwin': - case 'win32': if (lighter) return 'bg-black/80'; return 'bg-black/90'; default: