11use std:: path:: PathBuf ;
22
3- use tauri:: { Manager , path :: BaseDirectory } ;
3+ use tauri:: Manager ;
44use tauri_plugin_opener:: OpenerExt ;
5+ use tauri_plugin_path2:: Path2PluginExt ;
56
67use crate :: MiscPluginExt ;
78use crate :: audio:: import_audio;
@@ -36,11 +37,8 @@ pub async fn audio_exist<R: tauri::Runtime>(
3637 app : tauri:: AppHandle < R > ,
3738 session_id : String ,
3839) -> Result < bool , String > {
39- let data_dir = app
40- . path ( )
41- . resolve ( "hyprnote/sessions" , BaseDirectory :: Data )
42- . map_err ( |e| e. to_string ( ) ) ?;
43- let session_dir = data_dir. join ( session_id) ;
40+ let base = app. path2 ( ) . base ( ) . map_err ( |e| e. to_string ( ) ) ?;
41+ let session_dir = base. join ( "sessions" ) . join ( session_id) ;
4442
4543 [ "audio.wav" , "audio.ogg" ]
4644 . iter ( )
@@ -58,11 +56,8 @@ pub async fn audio_delete<R: tauri::Runtime>(
5856 app : tauri:: AppHandle < R > ,
5957 session_id : String ,
6058) -> Result < ( ) , String > {
61- let data_dir = app
62- . path ( )
63- . resolve ( "hyprnote/sessions" , BaseDirectory :: Data )
64- . map_err ( |e| e. to_string ( ) ) ?;
65- let session_dir = data_dir. join ( session_id) ;
59+ let base = app. path2 ( ) . base ( ) . map_err ( |e| e. to_string ( ) ) ?;
60+ let session_dir = base. join ( "sessions" ) . join ( session_id) ;
6661
6762 [ "audio.wav" , "audio.ogg" ]
6863 . iter ( )
@@ -94,11 +89,11 @@ fn audio_import_internal<R: tauri::Runtime>(
9489 session_id : & str ,
9590 source_path : & str ,
9691) -> Result < PathBuf , AudioImportError > {
97- let data_dir = app
98- . path ( )
99- . resolve ( "hyprnote/sessions" , BaseDirectory :: Data )
92+ let base = app
93+ . path2 ( )
94+ . base ( )
10095 . map_err ( |e| AudioImportError :: PathResolver ( e. to_string ( ) ) ) ?;
101- let session_dir = data_dir . join ( session_id) ;
96+ let session_dir = base . join ( "sessions" ) . join ( session_id) ;
10297
10398 std:: fs:: create_dir_all ( & session_dir) ?;
10499
@@ -127,11 +122,8 @@ pub async fn audio_path<R: tauri::Runtime>(
127122 app : tauri:: AppHandle < R > ,
128123 session_id : String ,
129124) -> Result < String , String > {
130- let data_dir = app
131- . path ( )
132- . resolve ( "hyprnote/sessions" , BaseDirectory :: Data )
133- . map_err ( |e| e. to_string ( ) ) ?;
134- let session_dir = data_dir. join ( session_id) ;
125+ let base = app. path2 ( ) . base ( ) . map_err ( |e| e. to_string ( ) ) ?;
126+ let session_dir = base. join ( "sessions" ) . join ( session_id) ;
135127
136128 let path = [ "audio.ogg" , "audio.wav" ]
137129 . iter ( )
@@ -148,11 +140,8 @@ pub async fn audio_open<R: tauri::Runtime>(
148140 app : tauri:: AppHandle < R > ,
149141 session_id : String ,
150142) -> Result < ( ) , String > {
151- let data_dir = app
152- . path ( )
153- . resolve ( "hyprnote/sessions" , BaseDirectory :: Data )
154- . map_err ( |e| e. to_string ( ) ) ?;
155- let session_dir = data_dir. join ( session_id) ;
143+ let base = app. path2 ( ) . base ( ) . map_err ( |e| e. to_string ( ) ) ?;
144+ let session_dir = base. join ( "sessions" ) . join ( session_id) ;
156145
157146 app. opener ( )
158147 . open_path ( session_dir. to_string_lossy ( ) , None :: < & str > )
@@ -167,11 +156,8 @@ pub async fn delete_session_folder<R: tauri::Runtime>(
167156 app : tauri:: AppHandle < R > ,
168157 session_id : String ,
169158) -> Result < ( ) , String > {
170- let data_dir = app
171- . path ( )
172- . resolve ( "hyprnote/sessions" , BaseDirectory :: Data )
173- . map_err ( |e| e. to_string ( ) ) ?;
174- let session_dir = data_dir. join ( session_id) ;
159+ let base = app. path2 ( ) . base ( ) . map_err ( |e| e. to_string ( ) ) ?;
160+ let session_dir = base. join ( "sessions" ) . join ( session_id) ;
175161
176162 if session_dir. exists ( ) {
177163 std:: fs:: remove_dir_all ( session_dir) . map_err ( |e| e. to_string ( ) ) ?;
0 commit comments