diff --git a/package.json b/package.json index 4b74f80..13acf2d 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "lycoris", "private": true, - "version": "0.9.18", + "version": "0.9.19", "type": "module", "license": "MIT", "engines": { @@ -16,29 +16,29 @@ "debug:rs": "RUST_BACKTRACE=1 tauri dev --verbose" }, "dependencies": { - "@tauri-apps/api": "^1.5.3", - "dayjs": "^1.11.10", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-h5-audio-player": "^3.9.1", - "react-medium-image-zoom": "^5.2.0", + "@tauri-apps/api": "^1.6.0", + "dayjs": "^1.11.13", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-h5-audio-player": "^3.9.3", + "react-medium-image-zoom": "^5.2.8", "react-toastify": "^10.0.5", "recoil": "^0.7.7", "tauri-plugin-sql-api": "github:tauri-apps/tauri-plugin-sql#release", - "zenn-content-css": "^0.1.153", - "zenn-markdown-html": "^0.1.153" + "zenn-content-css": "^0.1.155", + "zenn-markdown-html": "^0.1.155" }, "devDependencies": { - "@tauri-apps/cli": "^1.5.11", - "@types/markdown-it": "^14.0.0", - "@types/react": "^18.2.77", - "@types/react-dom": "^18.2.25", - "@vitejs/plugin-react": "^4.2.1", - "autoprefixer": "^10.4.19", + "@tauri-apps/cli": "^1.6.1", + "@types/markdown-it": "^14.1.2", + "@types/react": "^18.3.4", + "@types/react-dom": "^18.3.0", + "@vitejs/plugin-react": "^4.3.1", + "autoprefixer": "^10.4.20", "daisyui": "^3.9.4", - "postcss": "^8.4.38", - "tailwindcss": "^3.4.3", - "typescript": "^5.4.5", - "vite": "^5.2.8" + "postcss": "^8.4.41", + "tailwindcss": "^3.4.10", + "typescript": "^5.5.4", + "vite": "^5.4.2" } } diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index 8e41cf3..3b98b62 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -596,9 +596,9 @@ dependencies = [ [[package]] name = "brotli" -version = "3.5.0" +version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d640d25bc63c50fb1f0b545ffd80207d2e10a4c965530809b40ba3386825c391" +checksum = "74f7971dbd9326d58187408ab83117d8ac1bb9c17b085fdacd1cf2f598719b6b" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -607,9 +607,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "2.5.1" +version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" +checksum = "9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -853,9 +853,9 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.35" +version = "0.4.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eaf5903dcbc0a39312feb77df2ff4c76387d591b9fc7b04a238dcf8bb62639a" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", @@ -944,7 +944,7 @@ dependencies = [ "bitflags 1.3.2", "block", "cocoa-foundation", - "core-foundation", + "core-foundation 0.9.4", "core-graphics 0.22.3", "foreign-types 0.3.2", "libc", @@ -959,8 +959,8 @@ checksum = "8c6234cbb2e4c785b456c0644748b1ac416dd045799740356f8363dfe00c93f7" dependencies = [ "bitflags 1.3.2", "block", - "core-foundation", - "core-graphics-types", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", "libc", "objc", ] @@ -1041,11 +1041,21 @@ dependencies = [ "libc", ] +[[package]] +name = "core-foundation" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "core-graphics" @@ -1054,8 +1064,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" dependencies = [ "bitflags 1.3.2", - "core-foundation", - "core-graphics-types", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", "foreign-types 0.3.2", "libc", ] @@ -1067,8 +1077,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "970a29baf4110c26fedbc7f82107d42c23f7e88e404c4577ed73fe99ff85a212" dependencies = [ "bitflags 1.3.2", - "core-foundation", - "core-graphics-types", + "core-foundation 0.9.4", + "core-graphics-types 0.1.3", + "foreign-types 0.5.0", + "libc", +] + +[[package]] +name = "core-graphics" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa95a34622365fa5bbf40b20b75dba8dfa8c94c734aea8ac9a5ca38af14316f1" +dependencies = [ + "bitflags 2.5.0", + "core-foundation 0.10.0", + "core-graphics-types 0.2.0", "foreign-types 0.5.0", "libc", ] @@ -1080,7 +1103,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", + "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.5.0", + "core-foundation 0.10.0", "libc", ] @@ -1162,9 +1196,9 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.12" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" dependencies = [ "crossbeam-utils", ] @@ -2053,6 +2087,15 @@ dependencies = [ "miniz_oxide", ] +[[package]] +name = "fluent-uri" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17c704e9dbe1ddd863da1e6ff3567795087b1eb201ce80d8fa81162e1516500d" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "flume" version = "0.11.0" @@ -2730,7 +2773,26 @@ dependencies = [ "futures-core", "futures-sink", "futures-util", - "http", + "http 0.2.12", + "indexmap 2.2.6", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "h2" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http 1.1.0", "indexmap 2.2.6", "slab", "tokio", @@ -2888,6 +2950,17 @@ dependencies = [ "itoa 1.0.10", ] +[[package]] +name = "http" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +dependencies = [ + "bytes", + "fnv", + "itoa 1.0.10", +] + [[package]] name = "http-body" version = "0.4.6" @@ -2895,7 +2968,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" dependencies = [ "bytes", - "http", + "http 0.2.12", + "pin-project-lite", +] + +[[package]] +name = "http-body" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +dependencies = [ + "bytes", + "http 1.1.0", +] + +[[package]] +name = "http-body-util" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +dependencies = [ + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", "pin-project-lite", ] @@ -2927,9 +3023,9 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2", - "http", - "http-body", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", "httparse", "httpdate", "itoa 1.0.10", @@ -2941,6 +3037,43 @@ dependencies = [ "want", ] +[[package]] +name = "hyper" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2 0.4.6", + "http 1.1.0", + "http-body 1.0.1", + "httparse", + "itoa 1.0.10", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.4.1", + "hyper-util", + "rustls 0.23.10", + "rustls-pki-types", + "tokio", + "tokio-rustls", + "tower-service", +] + [[package]] name = "hyper-tls" version = "0.5.0" @@ -2948,10 +3081,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" dependencies = [ "bytes", - "hyper", + "hyper 0.14.28", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "hyper-tls" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" +dependencies = [ + "bytes", + "http-body-util", + "hyper 1.4.1", + "hyper-util", "native-tls", "tokio", "tokio-native-tls", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cde7055719c54e36e95e8719f95883f22072a48ede39db7fc17a4e1d5281e9b9" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "hyper 1.4.1", + "pin-project-lite", + "socket2 0.5.6", + "tokio", + "tower", + "tower-service", + "tracing", ] [[package]] @@ -3291,14 +3460,25 @@ dependencies = [ [[package]] name = "json-patch" -version = "1.2.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55ff1e1486799e3f64129f8ccad108b38290df9cd7015cd31bed17239f0789d6" +checksum = "5b1fb8864823fad91877e6caea0baca82e49e8db50f8e5c9f9a453e27d3330fc" dependencies = [ + "jsonptr", "serde", "serde_json", "thiserror", - "treediff", +] + +[[package]] +name = "jsonptr" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c6e529149475ca0b2820835d3dce8fcc41c6b943ca608d32f35b449255e4627" +dependencies = [ + "fluent-uri", + "serde", + "serde_json", ] [[package]] @@ -3491,10 +3671,10 @@ dependencies = [ [[package]] name = "lycoris" -version = "0.9.18" +version = "0.9.19" dependencies = [ "chrono", - "core-graphics 0.23.1", + "core-graphics 0.24.0", "cpal", "crossbeam-channel", "ct2rs", @@ -3507,7 +3687,7 @@ dependencies = [ "objc-foundation", "objc_id", "once_cell", - "reqwest", + "reqwest 0.12.5", "rusqlite", "samplerate-rs", "screencapturekit", @@ -3559,7 +3739,7 @@ version = "0.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "edf7710fbff50c24124331760978fb9086d6de6288dcdb38b25a97f8b1bdebbb" dependencies = [ - "core-foundation", + "core-foundation 0.9.4", "core-foundation-sys", ] @@ -3688,7 +3868,7 @@ checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25" dependencies = [ "bitflags 2.5.0", "block", - "core-graphics-types", + "core-graphics-types 0.1.3", "foreign-types 0.5.0", "log", "objc", @@ -4629,6 +4809,26 @@ dependencies = [ "siphasher", ] +[[package]] +name = "pin-project" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.61", +] + [[package]] name = "pin-project-lite" version = "0.2.13" @@ -5208,25 +5408,24 @@ dependencies = [ "encoding_rs", "futures-core", "futures-util", - "h2", - "http", - "http-body", - "hyper", - "hyper-tls", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.28", + "hyper-tls 0.5.0", "ipnet", "js-sys", "log", "mime", - "mime_guess", "native-tls", "once_cell", "percent-encoding", "pin-project-lite", - "rustls-pemfile", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 0.1.2", "system-configuration", "tokio", "tokio-native-tls", @@ -5240,6 +5439,52 @@ dependencies = [ "winreg 0.50.0", ] +[[package]] +name = "reqwest" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7d6d2a27d57148378eb5e111173f4276ad26340ecc5c49a4a2152167a2d6a37" +dependencies = [ + "base64 0.22.1", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2 0.4.6", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls", + "hyper-tls 0.6.0", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "mime_guess", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls-pemfile 2.1.3", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "system-configuration", + "tokio", + "tokio-native-tls", + "tokio-util", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "winreg 0.52.0", +] + [[package]] name = "rfd" version = "0.10.0" @@ -5393,6 +5638,19 @@ dependencies = [ "zeroize", ] +[[package]] +name = "rustls" +version = "0.23.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05cff451f60db80f490f3c182b77c35260baace73209e9cdbbe526bfe3a4d402" +dependencies = [ + "once_cell", + "rustls-pki-types", + "rustls-webpki", + "subtle", + "zeroize", +] + [[package]] name = "rustls-pemfile" version = "1.0.4" @@ -5402,6 +5660,16 @@ dependencies = [ "base64 0.21.7", ] +[[package]] +name = "rustls-pemfile" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "196fe16b00e106300d3e45ecfcb764fa292a535d7326a29a5875c579c7417425" +dependencies = [ + "base64 0.22.1", + "rustls-pki-types", +] + [[package]] name = "rustls-pki-types" version = "1.7.0" @@ -5514,7 +5782,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", "core-foundation-sys", "libc", "security-framework-sys", @@ -5702,9 +5970,9 @@ dependencies = [ [[package]] name = "serialize-to-javascript" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9823f2d3b6a81d98228151fdeaf848206a7855a7a042bbf9bf870449a66cafb" +checksum = "04f3666a07a197cdb77cdf306c32be9b7f598d7060d50cfd4d5aa04bfd92f6c5" dependencies = [ "serde", "serde_json", @@ -5713,13 +5981,13 @@ dependencies = [ [[package]] name = "serialize-to-javascript-impl" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74064874e9f6a15f04c1f3cb627902d0e6b410abbf36668afa873c61889f1763" +checksum = "772ee033c0916d670af7860b6e1ef7d658a4629a6d0b4c8c3e67f09b3765b75d" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.61", ] [[package]] @@ -5754,9 +6022,9 @@ dependencies = [ [[package]] name = "sha1_smol" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" +checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d" [[package]] name = "sha2" @@ -6361,6 +6629,12 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" + [[package]] name = "synstructure" version = "0.13.1" @@ -6374,15 +6648,11 @@ dependencies = [ [[package]] name = "sys-locale" -version = "0.2.4" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8a11bd9c338fdba09f7881ab41551932ad42e405f61d01e8406baea71c07aee" +checksum = "e801cf239ecd6ccd71f03d270d67dd53d13e90aab208bf4b8fe4ad957ea949b0" dependencies = [ - "js-sys", "libc", - "wasm-bindgen", - "web-sys", - "windows-sys 0.45.0", ] [[package]] @@ -6421,7 +6691,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", "system-configuration-sys", ] @@ -6471,7 +6741,7 @@ dependencies = [ "cairo-rs", "cc", "cocoa", - "core-foundation", + "core-foundation 0.9.4", "core-graphics 0.22.3", "crossbeam-channel", "dispatch", @@ -6538,9 +6808,9 @@ checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" [[package]] name = "tauri" -version = "1.6.8" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77567d2b3b74de4588d544147142d02297f3eaa171a25a065252141d8597a516" +checksum = "0e33e3ba00a3b05eb6c57ef135781717d33728b48acf914bb05629e74d897d29" dependencies = [ "anyhow", "bytes", @@ -6556,7 +6826,7 @@ dependencies = [ "glob", "gtk", "heck 0.5.0", - "http", + "http 0.2.12", "ignore", "indexmap 1.9.3", "nix 0.26.4", @@ -6570,7 +6840,7 @@ dependencies = [ "rand 0.8.5", "raw-window-handle", "regex", - "reqwest", + "reqwest 0.11.27", "rfd", "semver 1.0.22", "serde", @@ -6597,14 +6867,14 @@ dependencies = [ [[package]] name = "tauri-build" -version = "1.5.1" +version = "1.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9914a4715e0b75d9f387a285c7e26b5bbfeb1249ad9f842675a82481565c532" +checksum = "d5fb5a90a64241ddb7217d3210d844149070a911e87e8a107a707a1d4973f164" dependencies = [ "anyhow", "cargo_toml", "dirs-next", - "heck 0.4.1", + "heck 0.5.0", "json-patch", "semver 1.0.22", "serde", @@ -6616,9 +6886,9 @@ dependencies = [ [[package]] name = "tauri-codegen" -version = "1.4.3" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3a1d90db526a8cdfd54444ad3f34d8d4d58fa5c536463915942393743bd06f8" +checksum = "93a9e3f5cebf779a63bf24903e714ec91196c307d8249a0008b882424328bcda" dependencies = [ "base64 0.21.7", "brotli", @@ -6642,9 +6912,9 @@ dependencies = [ [[package]] name = "tauri-macros" -version = "1.4.4" +version = "1.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a582d75414250122e4a597b9dd7d3c910a2c77906648fc2ac9353845ff0feec" +checksum = "d1d0e989f54fe06c5ef0875c5e19cf96453d099a0a774d5192ab47e80471cdab" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -6686,12 +6956,12 @@ dependencies = [ [[package]] name = "tauri-runtime" -version = "0.14.3" +version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd7ffddf36d450791018e63a3ddf54979b9581d9644c584a5fb5611e6b5f20b4" +checksum = "f33fda7d213e239077fad52e96c6b734cecedb30c2382118b64f94cb5103ff3a" dependencies = [ "gtk", - "http", + "http 0.2.12", "http-range", "rand 0.8.5", "raw-window-handle", @@ -6707,9 +6977,9 @@ dependencies = [ [[package]] name = "tauri-runtime-wry" -version = "0.14.8" +version = "0.14.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1989b3b4d611f5428b3414a4abae6fa6df30c7eb8ed33250ca90a5f7e5bb3655" +checksum = "18c447dcd9b0f09c7dc4b752cc33e72788805bfd761fbda5692d30c48289efec" dependencies = [ "arboard", "cocoa", @@ -6728,9 +6998,9 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "1.5.4" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "450b17a7102e5d46d4bdabae0d1590fd27953e704e691fc081f06c06d2253b35" +checksum = "83a0c939e88d82903a0a7dfb28388b12a3c03504d6bd6086550edaa3b6d8beaa" dependencies = [ "brotli", "ctor", @@ -6983,6 +7253,17 @@ dependencies = [ "tokio", ] +[[package]] +name = "tokio-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +dependencies = [ + "rustls 0.23.10", + "rustls-pki-types", + "tokio", +] + [[package]] name = "tokio-stream" version = "0.1.15" @@ -7076,6 +7357,27 @@ dependencies = [ "winnow 0.6.5", ] +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "pin-project", + "pin-project-lite", + "tokio", + "tower-layer", + "tower-service", +] + +[[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.2" @@ -7169,15 +7471,6 @@ dependencies = [ "petgraph", ] -[[package]] -name = "treediff" -version = "4.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d127780145176e2b5d16611cc25a900150e86e9fd79d3bde6ff3a37359c9cb5" -dependencies = [ - "serde_json", -] - [[package]] name = "try-lock" version = "0.2.5" @@ -7301,7 +7594,7 @@ dependencies = [ "log", "native-tls", "once_cell", - "rustls", + "rustls 0.22.4", "rustls-pki-types", "rustls-webpki", "serde", @@ -7984,15 +8277,6 @@ dependencies = [ "windows_x86_64_msvc 0.42.2", ] -[[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.48.0" @@ -8011,21 +8295,6 @@ dependencies = [ "windows-targets 0.52.5", ] -[[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.48.5" @@ -8339,7 +8608,7 @@ dependencies = [ "glib", "gtk", "html5ever", - "http", + "http 0.2.12", "kuchikiki", "libc", "log", @@ -8411,11 +8680,11 @@ dependencies = [ [[package]] name = "xcap" -version = "0.0.9" +version = "0.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b76339b2f4195ad7092d88a19819cd99fe15351f0cf82041c42afa8a33efd60" +checksum = "ef63013185432ec4957e2ef8f5d075ea26eebda6374883b2669896195634f235" dependencies = [ - "core-foundation", + "core-foundation 0.9.4", "core-graphics 0.23.1", "dbus", "image 0.25.1", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index e322359..bc82380 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,45 +1,45 @@ [package] name = "lycoris" -version = "0.9.18" +version = "0.9.19" description = "Lycoris is an offline voice memo" authors = ["solaoi"] license = "MIT" repository = "https://github.com/solaoi/lycoris" default-run = "lycoris" edition = "2021" -rust-version = "1.68" +rust-version = "1.80" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [build-dependencies] -tauri-build = { version = "1.2.1", features = [] } +tauri-build = { version = "1.5.4", features = [] } [dependencies] serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } -tauri = { version = "1.6.7", features = ["api-all"] } +tauri = { version = "1.7.2", features = ["api-all"] } vosk = "0.1.0" -cpal = "0.14.0" +cpal = "0.14.1" dasp = "0.11" -unicode-segmentation = "1.9.0" -once_cell = "1.13.1" -crossbeam-channel = "0.5.6" -chrono = "0.4.22" +unicode-segmentation = "1.11.0" +once_cell = "1.19.0" +crossbeam-channel = "0.5.13" +chrono = "0.4.38" hound = "3.5.1" rusqlite = "*" samplerate-rs = "0.1.0" # download model and openai request -reqwest = { version = "0.11", features = ["stream", "multipart", "json"] } +reqwest = { version = "0.12", features = ["stream", "multipart", "json"] } tokio = { version = "1", features = ["full"] } -futures-util = "0.3.26" +futures-util = "0.3.30" # serve audio -urlencoding = "2.1.0" +urlencoding = "2.1.3" # screencapturekit = "0.2.7" # fix thread crash screencapturekit = { git = "https://github.com/solaoi/screencapturekit-rs" } -xcap = "0.0.9" +xcap = "0.0.12" # permission macos-accessibility-client = "0.0.1" -core-graphics = "0.23.1" +core-graphics = "0.24.0" objc = "0.2" objc-foundation = "0.1" objc_id = "0.1" diff --git a/src-tauri/migrations/001.sql b/src-tauri/migrations/001.sql index b51d653..371a87b 100644 --- a/src-tauri/migrations/001.sql +++ b/src-tauri/migrations/001.sql @@ -34,6 +34,10 @@ VALUES("settingKeyAmivoice", ""); INSERT INTO settings(setting_name, setting_status) VALUES("settingLanguage", "日本語"); INSERT INTO settings(setting_name, setting_status) +VALUES("settingProcess", "文字起こし"); +INSERT INTO settings(setting_name, setting_status) +VALUES("settingOnline", "OpenAI"); +INSERT INTO settings(setting_name, setting_status) VALUES("settingTemplate", ""); INSERT INTO settings(setting_name, setting_status) VALUES("settingFCfunctions", ""); @@ -44,10 +48,12 @@ VALUES("settingHook", ""); INSERT INTO settings(setting_name, setting_status) VALUES("settingResource", ""); INSERT INTO settings(setting_name, setting_status) -VALUES("settingModel", "gpt-3.5-turbo"); +VALUES("settingModel", "gpt-4o-mini"); INSERT INTO settings(setting_name, setting_status) VALUES("settingAmiVoiceModel", "general"); INSERT INTO settings(setting_name, setting_status) +VALUES("settingAmiVoiceLogging", "off"); +INSERT INTO settings(setting_name, setting_status) VALUES("settingAILanguage", "None"); INSERT INTO settings(setting_name, setting_status) VALUES( diff --git a/src-tauri/src/module/chat_online.rs b/src-tauri/src/module/chat_online.rs index ed937aa..e372bf8 100644 --- a/src-tauri/src/module/chat_online.rs +++ b/src-tauri/src/module/chat_online.rs @@ -321,7 +321,7 @@ impl ChatOnline { let model = if result.is_ok() { result.unwrap() } else { - "gpt-3.5-turbo".to_string() + "gpt-4o-mini".to_string() }; let result = self.sqlite.select_fc_functions(); let functions = if result.is_ok() { diff --git a/src-tauri/src/module/sqlite.rs b/src-tauri/src/module/sqlite.rs index 7e5a8be..e831855 100644 --- a/src-tauri/src/module/sqlite.rs +++ b/src-tauri/src/module/sqlite.rs @@ -116,6 +116,14 @@ impl Sqlite { ); } + pub fn select_amivoice_logging(&self) -> Result { + return self.conn.query_row( + "SELECT setting_status FROM settings WHERE setting_name = \"settingAmiVoiceLogging\"", + params![], + |row| Ok(row.get_unwrap(0)), + ); + } + pub fn select_ai_resource(&self) -> Result { return self.conn.query_row( "SELECT setting_status FROM settings WHERE setting_name = \"settingResource\"", diff --git a/src-tauri/src/module/transcription_amivoice.rs b/src-tauri/src/module/transcription_amivoice.rs index 688167c..8bc2fe5 100644 --- a/src-tauri/src/module/transcription_amivoice.rs +++ b/src-tauri/src/module/transcription_amivoice.rs @@ -20,6 +20,7 @@ pub struct TranscriptionAmivoice { note_id: u64, token: String, model: String, + logging: String, } impl TranscriptionAmivoice { @@ -27,12 +28,14 @@ impl TranscriptionAmivoice { let sqlite = Sqlite::new(); let token = sqlite.select_amivoice_token().unwrap(); let model = sqlite.select_amivoice_model().unwrap(); + let logging = sqlite.select_amivoice_logging().unwrap(); Self { app_handle, sqlite, note_id, token, model, + logging, } } @@ -71,8 +74,13 @@ impl TranscriptionAmivoice { file_path: String, token: String, model: String, + logging: String, ) -> Result> { - let url = "https://acp-api.amivoice.com/v1/nolog/recognize"; + let url = if logging == "on" { + "https://acp-api.amivoice.com/v1/recognize" + } else { + "https://acp-api.amivoice.com/v1/nolog/recognize" + }; let client = Client::new(); let mut file = File::open(file_path).await?; @@ -151,7 +159,12 @@ impl TranscriptionAmivoice { fn convert(&mut self) -> Result<(), rusqlite::Error> { let vosk_speech = self.sqlite.select_vosk(self.note_id); return vosk_speech.and_then(|speech| { - let result = Self::request(speech.wav, self.token.clone(), self.model.clone()); + let result = Self::request( + speech.wav, + self.token.clone(), + self.model.clone(), + self.logging.clone(), + ); if result.is_ok() { let updated = self diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 3b6df20..22be7ce 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -8,7 +8,7 @@ }, "package": { "productName": "Lycoris", - "version": "0.9.18" + "version": "0.9.19" }, "tauri": { "allowlist": { @@ -62,6 +62,8 @@ "fullscreen": false, "width": 1024, "height": 768, + "minWidth": 1024, + "minHeight": 384, "resizable": true, "title": "Lycoris" } diff --git a/src/components/molecules/FilterTabs.tsx b/src/components/molecules/FilterTabs.tsx new file mode 100644 index 0000000..fead94c --- /dev/null +++ b/src/components/molecules/FilterTabs.tsx @@ -0,0 +1,26 @@ +import { useState } from "react" +import { useSetRecoilState } from "recoil"; +import { speechFilterState } from '../../store/atoms/speechFilterState' + +const FilterTabs = (): JSX.Element => { + const [activeTab, setActiveTab] = useState(0); + const setFilterTarget = useSetRecoilState(speechFilterState) + + return ( +
+ { setActiveTab(0); setFilterTarget(null); }}> + 全て + + { setActiveTab(1); setFilterTarget("memo"); }}> + メモ + + { setActiveTab(2); setFilterTarget("screenshot") }}> + スクリーンショット + +
) +} + +export { FilterTabs } \ No newline at end of file diff --git a/src/components/molecules/MemoFilterButton.tsx b/src/components/molecules/MemoFilterButton.tsx deleted file mode 100644 index 12183c4..0000000 --- a/src/components/molecules/MemoFilterButton.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import { useRecoilState } from 'recoil' -import { speechFilterState } from '../../store/atoms/speechFilterState' - -const MemoFilterButton = (): JSX.Element => { - const [filterTarget, setFilterTarget] = useRecoilState(speechFilterState) - const click = () => { - if (filterTarget === "memo") { - setFilterTarget(null) - } else { - setFilterTarget("memo") - } - } - - return ( - - ) -} - -export { MemoFilterButton } \ No newline at end of file diff --git a/src/components/molecules/ScreenshotSet.tsx b/src/components/molecules/ScreenshotSet.tsx index f1ec97a..54f4056 100644 --- a/src/components/molecules/ScreenshotSet.tsx +++ b/src/components/molecules/ScreenshotSet.tsx @@ -48,7 +48,7 @@ const AppWindow = (): JSX.Element => { }>