mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-11-30 05:46:09 +01:00
4f050f358a
- Refactor the system status list into its own template - Change the backend to return only the system status if htmx initiated the request - `hx-get="{{$.Link}}/system_status`: reuse the backend handler - `hx-swap="innerHTML"`: replace the `<div>`'s innerHTML (essentially the new template) - `hx-trigger="every 5s"`: call every 5 seconds - `hx-indicator=".divider"`: the `is-loading` class shouldn't be added to the div during the request, so set it on an element it has no effect on - Render "Since Last GC Time" with `<relative-time>`, so we send a timestamp # Auto-update in action GIF ![action](https://github.com/go-gitea/gitea/assets/20454870/c6e1f220-f0fb-4460-ac3b-59f315e30e29) --------- Signed-off-by: Yarden Shoham <git@yardenshoham.com> Co-authored-by: silverwind <me@silverwind.io> (cherry picked from commit c70f65e83bc1876fb368fd117d342573ff18a9e8)
22 lines
772 B
JavaScript
22 lines
772 B
JavaScript
import * as htmx from 'htmx.org';
|
|
import {showErrorToast} from './modules/toast.js';
|
|
|
|
// https://github.com/bigskysoftware/idiomorph#htmx
|
|
import 'idiomorph/dist/idiomorph-ext.js';
|
|
|
|
// https://htmx.org/reference/#config
|
|
htmx.config.requestClass = 'is-loading';
|
|
htmx.config.scrollIntoViewOnBoost = false;
|
|
|
|
// https://htmx.org/events/#htmx:sendError
|
|
document.body.addEventListener('htmx:sendError', (event) => {
|
|
// TODO: add translations
|
|
showErrorToast(`Network error when calling ${event.detail.requestConfig.path}`);
|
|
});
|
|
|
|
// https://htmx.org/events/#htmx:responseError
|
|
document.body.addEventListener('htmx:responseError', (event) => {
|
|
// TODO: add translations
|
|
showErrorToast(`Error ${event.detail.xhr.status} when calling ${event.detail.requestConfig.path}`);
|
|
});
|