Skip to content

Commit 155af33

Browse files
authored
Merge pull request #79 from HanaDigital/master
v3.0.8
2 parents ff60c54 + ba5346f commit 155af33

File tree

9 files changed

+66
-44
lines changed

9 files changed

+66
-44
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ List of supported sites:
3838

3939
Author: [@dr-nyt](https://github.com/dr-nyt)
4040
Contributors: [@webdagger](https://github.com/webdagger), [@jiskim](https://github.com/jiskim)
41-
Version: 3.0.7
41+
Version: 3.0.8
4242

4343
## FEATURES
4444

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "novelscraper",
33
"private": true,
4-
"version": "3.0.7",
4+
"version": "3.0.8",
55
"type": "module",
66
"scripts": {
77
"dev": "vite",

src-tauri/Cargo.lock

Lines changed: 38 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src-tauri/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ regex = "1.11.1"
3333
reqwest = "0.12.12"
3434
tauri-plugin-opener = "2.2.6"
3535
tauri-plugin-os = "2"
36+
fix-path-env = { git = "https://github.com/tauri-apps/fix-path-env-rs" }
3637

3738
[target.'cfg(not(any(target_os = "android", target_os = "ios")))'.dependencies]
3839
tauri-plugin-updater = "2"

src-tauri/src/docker.rs

Lines changed: 14 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -4,32 +4,26 @@ use tauri::AppHandle;
44
use tauri_plugin_os::arch;
55
use tauri_plugin_shell::ShellExt;
66

7-
pub fn check_docker_status(app: &AppHandle) -> bool {
7+
pub fn check_docker_status(app: &AppHandle) -> Result<bool, String> {
88
let shell = app.shell();
99
match tauri::async_runtime::block_on(async move {
1010
shell.command("docker").args(["ps"]).output().await
1111
}) {
1212
Ok(output) => {
1313
if output.status.success() {
14-
println!("Result: {:?}", String::from_utf8(output.stdout));
15-
return true;
14+
return Ok(true);
1615
} else {
17-
println!("Exit with code: {}", output.status.code().unwrap());
18-
return false;
16+
return Err(String::from_utf8(output.stderr).unwrap());
1917
}
2018
}
2119
Err(e) => {
2220
println!("Error: {}", e);
23-
return false;
21+
return Err(e.to_string());
2422
}
2523
}
2624
}
2725

28-
pub fn start_cloudflare_resolver(app: &AppHandle, port: usize) -> bool {
29-
if !check_docker_status(app) {
30-
return false;
31-
}
32-
26+
pub fn start_cloudflare_resolver(app: &AppHandle, port: usize) -> Result<bool, String> {
3327
let shell = app.shell();
3428
let start_cmd = ["start", "novelscraper-cloudflare-resolver"];
3529

@@ -38,16 +32,12 @@ pub fn start_cloudflare_resolver(app: &AppHandle, port: usize) -> bool {
3832
}) {
3933
Ok(start_output) => {
4034
if start_output.status.success() {
41-
println!("Result: {:?}", String::from_utf8(start_output.stdout));
42-
return true;
43-
} else {
44-
println!("Exit with code: {}", start_output.status.code().unwrap());
45-
println!("Error: {:?}", String::from_utf8(start_output.stderr));
35+
return Ok(true);
4636
}
4737
}
4838
Err(e) => {
4939
println!("Error: {}", e);
50-
return false;
40+
return Err(e.to_string());
5141
}
5242
}
5343

@@ -77,22 +67,19 @@ pub fn start_cloudflare_resolver(app: &AppHandle, port: usize) -> bool {
7767
}) {
7868
Ok(run_output) => {
7969
if run_output.status.success() {
80-
println!("Result: {:?}", String::from_utf8(run_output.stdout));
81-
return true;
70+
return Ok(true);
8271
} else {
83-
println!("Exit with code: {}", run_output.status.code().unwrap());
84-
println!("Error: {:?}", String::from_utf8(run_output.stderr));
85-
return false;
72+
return Err(String::from_utf8(run_output.stderr).unwrap());
8673
}
8774
}
8875
Err(e) => {
8976
println!("Error: {}", e);
90-
return false;
77+
return Err(e.to_string());
9178
}
9279
}
9380
}
9481

95-
pub fn stop_cloudflare_resolver(app: &AppHandle) -> bool {
82+
pub fn stop_cloudflare_resolver(app: &AppHandle) -> Result<bool, String> {
9683
let shell = app.shell();
9784
match tauri::async_runtime::block_on(async move {
9885
shell
@@ -103,16 +90,14 @@ pub fn stop_cloudflare_resolver(app: &AppHandle) -> bool {
10390
}) {
10491
Ok(output) => {
10592
if output.status.success() {
106-
println!("Result: {:?}", String::from_utf8(output.stdout));
107-
return true;
93+
return Ok(true);
10894
} else {
109-
println!("Exit with code: {}", output.status.code().unwrap());
110-
return false;
95+
return Err(String::from_utf8(output.stderr).unwrap());
11196
}
11297
}
11398
Err(e) => {
11499
println!("Error: {}", e);
115-
return false;
100+
return Err(e.to_string());
116101
}
117102
}
118103
}

src-tauri/src/lib.rs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -86,19 +86,17 @@ async fn fetch_image(
8686
}
8787

8888
#[tauri::command]
89-
fn check_docker_status(app: AppHandle) -> bool {
90-
let is_started = docker::check_docker_status(&app);
91-
return is_started;
89+
fn check_docker_status(app: AppHandle) -> Result<bool, String> {
90+
return docker::check_docker_status(&app);
9291
}
9392

9493
#[tauri::command]
95-
fn start_cloudflare_resolver(app: AppHandle, port: usize) -> bool {
96-
let is_started = docker::start_cloudflare_resolver(&app, port);
97-
return is_started;
94+
fn start_cloudflare_resolver(app: AppHandle, port: usize) -> Result<bool, String> {
95+
return docker::start_cloudflare_resolver(&app, port);
9896
}
9997

10098
#[tauri::command]
101-
fn stop_cloudflare_resolver(app: AppHandle) -> bool {
99+
fn stop_cloudflare_resolver(app: AppHandle) -> Result<bool, String> {
102100
return docker::stop_cloudflare_resolver(&app);
103101
}
104102

@@ -151,6 +149,7 @@ async fn install_update(app: tauri::AppHandle) -> tauri_plugin_updater::Result<(
151149

152150
#[cfg_attr(mobile, tauri::mobile_entry_point)]
153151
pub fn run() {
152+
let _ = fix_path_env::fix();
154153
tauri::Builder::default()
155154
.setup(|app| {
156155
app.manage(Mutex::new(AppState::default()));

src-tauri/tauri.conf.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"$schema": "https://schema.tauri.app/config/2",
33
"productName": "NovelScraper",
4-
"version": "3.0.7",
4+
"version": "3.0.8",
55
"identifier": "me.hanadigital.novelscraper",
66
"build": {
77
"beforeDevCommand": "pnpm dev",

src/components/cloudflare-resolver.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { appStateAtom, dockerAtom } from "@/lib/store";
77
import { Button } from "./ui/button";
88
import { TooltipUI } from "./tooltip";
99
import DialogUI from "./dialog";
10-
import { CodeP, P, SmallP } from "./typography";
10+
import { SmallP } from "./typography";
1111
import { openUrl } from "@tauri-apps/plugin-opener";
1212
import { DialogClose } from "@radix-ui/react-dialog";
1313

@@ -29,10 +29,9 @@ export function CloudflareResolverStatus() {
2929
const initCloudflareResolver = async () => {
3030
setIsDockerInitializing(true);
3131
await new Promise((resolve) => setTimeout(resolve, 500));
32-
const dStatus = await handleCheckDockerStatus();
33-
const cfStatus = await handleStartCloudflareResolver();
32+
const status = await handleCheckDockerStatus() && await handleStartCloudflareResolver();
3433
setIsDockerInitializing(false);
35-
return dStatus && cfStatus
34+
return status;
3635
}
3736

3837
const handleCheckDockerStatus = async () => {
@@ -75,6 +74,7 @@ export function CloudflareResolverStatus() {
7574
setDocker(d => { d.cfResolverStatus = !isClosed });
7675
} catch (e) {
7776
console.error(e);
77+
await initCloudflareResolver();
7878
}
7979
setIsLoadingCloudflareResolver(false);
8080
}

src/routes/__root.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ function RootComponent() {
3535
const isClosed = await invoke<boolean>("stop_cloudflare_resolver");
3636
} catch (err) {
3737
console.error(err);
38-
event.preventDefault();
3938
}
4039
});
4140

0 commit comments

Comments
 (0)