1.18更新
This commit is contained in:
@@ -489,6 +489,8 @@ function createModal() {
|
||||
const overlay = document.createElement('div');
|
||||
overlay.className = 'cloud-presets-overlay';
|
||||
|
||||
// Template-only UI markup.
|
||||
// eslint-disable-next-line no-unsanitized/property
|
||||
overlay.innerHTML = `
|
||||
<div class="cloud-presets-modal">
|
||||
<div class="cp-header">
|
||||
@@ -584,6 +586,8 @@ function renderPage() {
|
||||
const start = (currentPage - 1) * ITEMS_PER_PAGE;
|
||||
const pageItems = filteredPresets.slice(start, start + ITEMS_PER_PAGE);
|
||||
|
||||
// Escaped fields are used in the template.
|
||||
// eslint-disable-next-line no-unsanitized/property
|
||||
grid.innerHTML = pageItems.map(p => `
|
||||
<div class="cp-card">
|
||||
<div class="cp-card-head">
|
||||
@@ -609,24 +613,34 @@ function renderPage() {
|
||||
|
||||
btn.disabled = true;
|
||||
const origHtml = btn.innerHTML;
|
||||
// Template-only UI markup.
|
||||
// eslint-disable-next-line no-unsanitized/property
|
||||
btn.innerHTML = '<i class="fa-solid fa-spinner fa-spin"></i> 导入中';
|
||||
|
||||
try {
|
||||
const data = await downloadPreset(url);
|
||||
if (onImportCallback) await onImportCallback(data);
|
||||
btn.classList.add('success');
|
||||
// Template-only UI markup.
|
||||
// eslint-disable-next-line no-unsanitized/property
|
||||
btn.innerHTML = '<i class="fa-solid fa-check"></i> 成功';
|
||||
setTimeout(() => {
|
||||
btn.classList.remove('success');
|
||||
// Template-only UI markup.
|
||||
// eslint-disable-next-line no-unsanitized/property
|
||||
btn.innerHTML = origHtml;
|
||||
btn.disabled = false;
|
||||
}, 2000);
|
||||
} catch (err) {
|
||||
console.error('[CloudPresets]', err);
|
||||
btn.classList.add('error');
|
||||
// Template-only UI markup.
|
||||
// eslint-disable-next-line no-unsanitized/property
|
||||
btn.innerHTML = '<i class="fa-solid fa-xmark"></i> 失败';
|
||||
setTimeout(() => {
|
||||
btn.classList.remove('error');
|
||||
// Template-only UI markup.
|
||||
// eslint-disable-next-line no-unsanitized/property
|
||||
btn.innerHTML = origHtml;
|
||||
btn.disabled = false;
|
||||
}, 2000);
|
||||
|
||||
Reference in New Issue
Block a user