0
0
mirror of https://github.com/go-gitea/gitea.git synced 2026-02-21 15:48:59 +01:00
gitea/web_src/js/features/instance-notice.ts

29 lines
800 B
TypeScript

import {localUserSettings} from '../modules/user-settings.ts';
const DISMISSED_KEY = 'instance_notice_dismissed';
function hideBanner(el: HTMLElement) {
el.style.display = 'none';
}
export function initInstanceNotice(): void {
const banner = document.querySelector<HTMLElement>('#instance-notice-banner');
if (!banner) return;
const dismissKey = banner.getAttribute('data-dismiss-key');
if (!dismissKey) return;
if (localUserSettings.getString(DISMISSED_KEY, '') === dismissKey) {
hideBanner(banner);
return;
}
const dismissBtn = banner.querySelector<HTMLButtonElement>('.instance-notice-dismiss');
if (dismissBtn) {
dismissBtn.addEventListener('click', () => {
localUserSettings.setString(DISMISSED_KEY, dismissKey);
hideBanner(banner);
});
}
}