mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-22 13:42:12 -03:00
- Added i18n support with automatic language detection based on browser settings. - Implemented translations for English (en) and Simplified Chinese (zh-CN). - Created utility functions for text replacement in HTML templates and JavaScript. - Developed a comprehensive translation key structure for various application components. - Added formatting functions for numbers, dates, and file sizes according to locale. - Included RTL language support and dynamic updates for DOM elements. - Created tests to verify the functionality of the i18n system.
66 lines
3.8 KiB
HTML
66 lines
3.8 KiB
HTML
<div id="loraContextMenu" class="context-menu">
|
|
<!-- <div class="context-menu-item" data-action="detail">
|
|
<i class="fas fa-info-circle"></i> Show Details
|
|
</div> -->
|
|
<!-- <div class="context-menu-item" data-action="civitai">
|
|
<i class="fas fa-external-link-alt"></i> View on Civitai
|
|
</div> -->
|
|
<div class="context-menu-item" data-action="refresh-metadata">
|
|
<i class="fas fa-sync"></i> <span data-i18n="loras.contextMenu.refreshMetadata">Refresh Civitai Data</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="relink-civitai">
|
|
<i class="fas fa-link"></i> <span data-i18n="loras.contextMenu.relinkCivitai">Re-link to Civitai</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="copyname">
|
|
<i class="fas fa-copy"></i> <span data-i18n="loras.contextMenu.copySyntax">Copy LoRA Syntax</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="sendappend">
|
|
<i class="fas fa-paper-plane"></i> <span data-i18n="loras.contextMenu.sendToWorkflowAppend">Send to Workflow (Append)</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="sendreplace">
|
|
<i class="fas fa-exchange-alt"></i> <span data-i18n="loras.contextMenu.sendToWorkflowReplace">Send to Workflow (Replace)</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="preview">
|
|
<i class="fas fa-folder-open"></i> <span data-i18n="loras.contextMenu.openExamples">Open Examples Folder</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="download-examples">
|
|
<i class="fas fa-download"></i> <span data-i18n="loras.contextMenu.downloadExamples">Download Example Images</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="replace-preview">
|
|
<i class="fas fa-image"></i> <span data-i18n="loras.contextMenu.replacePreview">Replace Preview</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="set-nsfw">
|
|
<i class="fas fa-exclamation-triangle"></i> <span data-i18n="loras.contextMenu.setContentRating">Set Content Rating</span>
|
|
</div>
|
|
<div class="context-menu-separator"></div>
|
|
<div class="context-menu-item" data-action="move">
|
|
<i class="fas fa-folder-open"></i> <span data-i18n="loras.contextMenu.moveToFolder">Move to Folder</span>
|
|
</div>
|
|
<div class="context-menu-item" data-action="exclude">
|
|
<i class="fas fa-eye-slash"></i> <span data-i18n="loras.contextMenu.excludeModel">Exclude Model</span>
|
|
</div>
|
|
<div class="context-menu-item delete-item" data-action="delete">
|
|
<i class="fas fa-trash"></i> <span data-i18n="loras.contextMenu.deleteModel">Delete Model</span>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="nsfwLevelSelector" class="nsfw-level-selector">
|
|
<div class="nsfw-level-header">
|
|
<h3 data-i18n="modals.contentRating.title">Set Content Rating</h3>
|
|
<button class="close-nsfw-selector"><i class="fas fa-times"></i></button>
|
|
</div>
|
|
<div class="nsfw-level-content">
|
|
<div class="current-level"><span data-i18n="modals.contentRating.current">Current:</span> <span id="currentNSFWLevel">Unknown</span></div>
|
|
<div class="nsfw-level-options">
|
|
<button class="nsfw-level-btn" data-level="1" data-i18n="modals.contentRating.levels.pg">PG</button>
|
|
<button class="nsfw-level-btn" data-level="2" data-i18n="modals.contentRating.levels.pg13">PG13</button>
|
|
<button class="nsfw-level-btn" data-level="4" data-i18n="modals.contentRating.levels.r">R</button>
|
|
<button class="nsfw-level-btn" data-level="8" data-i18n="modals.contentRating.levels.x">X</button>
|
|
<button class="nsfw-level-btn" data-level="16" data-i18n="modals.contentRating.levels.xxx">XXX</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="nodeSelector" class="node-selector">
|
|
<!-- Dynamic node list will be populated here -->
|
|
</div> |