add info toast for new dev version available

This commit is contained in:
plebeius.eth
2023-09-10 15:21:03 +02:00
parent d9f62a346e
commit 89b39a3748
2 changed files with 16 additions and 5 deletions
+15 -4
View File
@@ -25,6 +25,7 @@ import useError from "./hooks/useError";
import useInfo from "./hooks/useInfo";
import useSuccess from "./hooks/useSuccess";
import packageJson from '../package.json';
const commitRef = process?.env?.REACT_APP_COMMIT_REF || '';
export default function App() {
const {
@@ -70,20 +71,30 @@ export default function App() {
try {
const packageRes = await fetch('https://raw.githubusercontent.com/plebbit/plebchan/master/package.json', { cache: 'no-cache' });
const packageData = await packageRes.json();
if (packageJson.version !== packageData.version) {
const newVersionInfo = `New version available, plebchan v${packageData.version}. Refresh the page to update.`;
localStorage.setItem('infoToast', newVersionInfo);;
localStorage.setItem('infoToast', newVersionInfo);
}
// Check for commit hash if commitRef is defined
if (commitRef.length > 0) {
const commitRes = await fetch('https://raw.githubusercontent.com/plebbit/plebchan/development/public/latest_commit.txt', { cache: 'no-cache' });
const latestCommit = await commitRes.text();
if (latestCommit.trim() !== commitRef.trim()) {
const newVersionInfo = `New dev version available, commit ${latestCommit}. Refresh the page to update.`;
localStorage.setItem('infoToast', newVersionInfo);
}
}
} catch (error) {
console.error('Failed to fetch latest version info:', error);
}
};
fetchVersionInfo();
}, [setNewInfoMessage]);
// preload banners
useEffect(() => {