 4f050f358a
			
		
	
	
	
	
	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

---------
Signed-off-by: Yarden Shoham <git@yardenshoham.com>
Co-authored-by: silverwind <me@silverwind.io>
(cherry picked from commit c70f65e83bc1876fb368fd117d342573ff18a9e8)
		
	
			
		
			
				
	
	
		
			21 lines
		
	
	
	
		
			772 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			21 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}`);
 | |
| });
 |