You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Hydro/packages/ui-default/components/browser-update.page.ts

28 lines
891 B
TypeScript

import { AutoloadPage } from 'vj/misc/Page';
import { i18n, tpl } from 'vj/utils';
import { InfoDialog } from './dialog';
function isSupported() {
try {
if (!navigator.userAgent.includes('Chrome/')) return false;
const ver = +navigator.userAgent.split('Chrome/')[1].split('.')[0];
if (!Number.isSafeInteger(ver)) return false;
if (ver < 80) return false;
return true;
} catch (e) {
return false;
}
}
export default new AutoloadPage('browser-update', () => {
if (UserContext.priv !== -1) return; // Only warn superadmins
if ((+localStorage.getItem('su-browser-warn') || 0) - Date.now() < 24 * 3600 * 1000) return;
const key = 'warn::admin:unsupportedbrowser';
if (!isSupported() && i18n(key) !== key) {
new InfoDialog({
$body: tpl.typoMsg(i18n(key)),
}).open();
localStorage.setItem('su-browser-warn', Date.now().toString());
}
});