Add loader UI component

This commit is contained in:
Cohee
2023-10-31 22:16:33 +02:00
parent eb4e90c589
commit a0706fcfc8
6 changed files with 46 additions and 5 deletions

View File

@ -1,4 +1,5 @@
import { callPopup, eventSource, event_types, saveSettings, saveSettingsDebounced, getRequestHeaders, substituteParams, renderTemplate } from "../script.js";
import { hideLoader, showLoader } from "./loader.js";
import { isSubsetOf } from "./utils.js";
export {
getContext,
@ -579,7 +580,7 @@ async function getExtensionData(extension) {
function getModuleInformation() {
let moduleInfo = modules.length ? `<p>${DOMPurify.sanitize(modules.join(', '))}</p>` : '<p class="failure">Not connected to the API!</p>';
return `
<h3>Modules provided by your Extensions API:</h3>
<h3>Modules provided by your Extras API:</h3>
${moduleInfo}
`;
}
@ -588,8 +589,9 @@ function getModuleInformation() {
* Generates the HTML strings for all extensions and displays them in a popup.
*/
async function showExtensionsDetails() {
let htmlDefault = '<h3>Default Extensions:</h3>';
let htmlExternal = '<h3>External Extensions:</h3>';
showLoader();
let htmlDefault = '<h3>Built-in Extensions:</h3>';
let htmlExternal = '<h3>Installed Extensions:</h3>';
const extensions = Object.entries(manifests).sort((a, b) => a[1].loading_order - b[1].loading_order);
const promises = [];
@ -616,6 +618,7 @@ async function showExtensionsDetails() {
${htmlDefault}
${htmlExternal}
`;
hideLoader();
callPopup(`<div class="extensions_info">${html}</div>`, 'text');
}