26 lines
514 B
TypeScript
26 lines
514 B
TypeScript
import { useEffect, useState } from 'react';
|
|
import { appApi } from '../api/modules';
|
|
import type { AppInfo } from '../api/modules';
|
|
|
|
export function useAppInfo() {
|
|
const [appInfo, setAppInfo] = useState<AppInfo | null>(null);
|
|
|
|
useEffect(() => {
|
|
let ignore = false;
|
|
|
|
appApi.info()
|
|
.then((info) => {
|
|
if (!ignore) setAppInfo(info);
|
|
})
|
|
.catch(() => {
|
|
if (!ignore) setAppInfo(null);
|
|
});
|
|
|
|
return () => {
|
|
ignore = true;
|
|
};
|
|
}, []);
|
|
|
|
return appInfo;
|
|
}
|