String settings hooks (#82)

* added theme; env change

* began refactoring

* added process hook

* now singular string for each hook

* fixed splitting by comma to by space

* profile_create function updated

* prettier

* added jre validator

* restructured so that it doesnt look like a vec

* fixed merge issue

* snake case

* resolved merge issues + added process events

* clippy, fmt

* removed unnecssary func
This commit is contained in:
Wyatt Verchere
2023-04-17 12:40:27 -07:00
committed by GitHub
parent b120b5cfa8
commit 9f40640ed8
23 changed files with 473 additions and 210 deletions

View File

@@ -44,6 +44,12 @@ export async function validate_globals() {
return await invoke('jre_validate_globals')
}
// Gets java version from a specific path by trying to run 'java -version' on it.
// This also validates it, as it returns null if no valid java version is found at the path
export async function get_jre(path) {
return await invoke('jre_get_jre', { path })
}
// Gets key for the optimal JRE to use, for a given profile path
// The key can be used in the hashmap contained by JavaGlobals in Settings (if it exists)
export async function get_optimal_jre_key_by_path(path) {
@@ -52,7 +58,7 @@ export async function get_optimal_jre_key_by_path(path) {
// Gets key for the optimal JRE to use, for a given profile
// The key can be used in the hashmap contained by JavaGlobals in Settings (if it exists)
export async function get_optimal_jre_ke(path) {
export async function get_optimal_jre_key(path) {
return await invoke('jre_get_optimal_jre_key', { path })
}

View File

@@ -5,34 +5,34 @@
*/
import { invoke } from '@tauri-apps/api/tauri'
/// Gets if a process has finished by PID
/// Gets if a process has finished by UUID
/// Returns bool
export async function has_finished_by_pid(pid) {
return await invoke('process_has_finished_by_pid', { pid })
export async function has_finished_by_uuid(uuid) {
return await invoke('process_has_finished_by_uuid', { uuid })
}
/// Gets process exit status by PID
/// Gets process exit status by UUID
/// Returns u32
export async function get_exit_status_by_pid(pid) {
return await invoke('process_get_exit_status_by_pid', { pid })
export async function get_exit_status_by_uuid(uuid) {
return await invoke('process_get_exit_status_by_uuid', { uuid })
}
/// Gets all process IDs
/// Returns [u32]
export async function get_all_pids() {
return await invoke('process_get_all_pids')
export async function get_all_uuids() {
return await invoke('process_get_all_uuids')
}
/// Gets all running process IDs
/// Returns [u32]
export async function get_all_running_pids() {
return await invoke('process_get_all_running_pids')
export async function get_all_running_uuids() {
return await invoke('process_get_all_running_uuids')
}
/// Gets all running process IDs with a given profile path
/// Returns [u32]
export async function get_pids_by_profile_path(profile_path) {
return await invoke('process_get_pids_by_profile_path', { profile_path })
export async function get_uuids_by_profile_path(profile_path) {
return await invoke('process_get_uuids_by_profile_path', { profile_path })
}
/// Gets all running process IDs with a given profile path
@@ -47,19 +47,19 @@ export async function get_all_running_profiles(profile_path) {
return await invoke('process_get_all_running_profiles', { profile_path })
}
/// Gets process stderr by PID
/// Gets process stderr by UUID
/// Returns String
export async function get_stderr_by_pid(pid) {
return await invoke('process_get_stderr_by_pid', { pid })
export async function get_stderr_by_uuid(uuid) {
return await invoke('process_get_stderr_by_uuid', { uuid })
}
/// Gets process stdout by PID
/// Gets process stdout by UUID
/// Returns String
export async function get_stdout_by_pid(pid) {
return await invoke('process_get_stdout_by_pid', { pid })
export async function get_stdout_by_uuid(uuid) {
return await invoke('process_get_stdout_by_uuid', { uuid })
}
/// Kills a process by PID
export async function kill_by_pid(pid) {
return await invoke('process_kill_by_pid', { pid })
/// Kills a process by UUID
export async function kill_by_uuid(uuid) {
return await invoke('process_kill_by_uuid', { uuid })
}

View File

@@ -6,12 +6,21 @@
import { invoke } from '@tauri-apps/api/tauri'
// Add empty default instance
export async function addDefaultInstance() {
export async function create_empty() {
return await invoke('profile_create_empty')
}
/// Creates instance
/// Returns a path to the profile created
/// Add instance
/*
name: String, // the name of the profile, and relative path to create
game_version: String, // the game version of the profile
modloader: ModLoader, // the modloader to use
- ModLoader is an enum, with the following variants: Vanilla, Forge, Fabric, Quilt
loader_version: String, // the modloader version to use, set to "latest", "stable", or the ID of your chosen loader
icon: Path, // the icon for the profile
- icon is a path to an image file, which will be copied into the profile directory
*/
export async function create(name, game_version, modloader, loader_version, icon) {
return await invoke('profile_create', { name, game_version, modloader, loader_version, icon })
}