fix: Settings desync between frontend and backend
This commit is contained in:
parent
4676ac2909
commit
db55aaabfb
2 changed files with 6 additions and 2 deletions
|
|
@ -17,6 +17,7 @@ interface SettingsControllerType {
|
||||||
settings: () => Settings;
|
settings: () => Settings;
|
||||||
saveOnLeave: (settings: () => Partial<Settings>) => void;
|
saveOnLeave: (settings: () => Partial<Settings>) => void;
|
||||||
save: (settings: Settings) => Promise<void>;
|
save: (settings: Settings) => Promise<void>;
|
||||||
|
refetch: () => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
const SettingsContext = createContext() as Context<SettingsControllerType>;
|
const SettingsContext = createContext() as Context<SettingsControllerType>;
|
||||||
|
|
@ -44,6 +45,7 @@ export function SettingsProvider(props: ParentProps) {
|
||||||
syncSettings(settings);
|
syncSettings(settings);
|
||||||
await refetch();
|
await refetch();
|
||||||
},
|
},
|
||||||
|
refetch,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (getProgramInfo().dev_build)
|
if (getProgramInfo().dev_build)
|
||||||
|
|
@ -65,6 +67,8 @@ export function useSettings() {
|
||||||
if (!context)
|
if (!context)
|
||||||
throw new Error('useSettingsContext should be called inside its SettingsProvider');
|
throw new Error('useSettingsContext should be called inside its SettingsProvider');
|
||||||
|
|
||||||
|
context.refetch();
|
||||||
|
|
||||||
return context;
|
return context;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@ pub async fn install_java_from_major(java_version: u32) -> crate::Result<PathBuf
|
||||||
let package = packages
|
let package = packages
|
||||||
.into_iter()
|
.into_iter()
|
||||||
.find(|p| p.java_version.contains(&java_version))
|
.find(|p| p.java_version.contains(&java_version))
|
||||||
.ok_or(anyhow::anyhow!(
|
.ok_or_else(|| anyhow::anyhow!(
|
||||||
"Could not find a java package for version {}",
|
"Could not find a java package for version {}",
|
||||||
java_version
|
java_version
|
||||||
))?;
|
))?;
|
||||||
|
|
@ -65,7 +65,7 @@ pub async fn install_java_from_major(java_version: u32) -> crate::Result<PathBuf
|
||||||
#[onelauncher_macros::memory]
|
#[onelauncher_macros::memory]
|
||||||
pub async fn install_java_from_package(download: JavaZuluPackage) -> crate::Result<PathBuf> {
|
pub async fn install_java_from_package(download: JavaZuluPackage) -> crate::Result<PathBuf> {
|
||||||
let state = State::get().await?;
|
let state = State::get().await?;
|
||||||
let java_version = *download.java_version.get(0).unwrap_or(&0);
|
let java_version = *download.java_version.first().unwrap_or(&0);
|
||||||
|
|
||||||
let ingress = init_ingress(
|
let ingress = init_ingress(
|
||||||
crate::IngressType::DownloadJava {
|
crate::IngressType::DownloadJava {
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue