mirror of
https://github.com/willmiao/ComfyUI-Lora-Manager.git
synced 2026-03-25 23:25:43 -03:00
fix(onboarding): update language handling and selection logic in onboarding process
This commit is contained in:
@@ -5,7 +5,7 @@ export class OnboardingManager {
|
|||||||
constructor() {
|
constructor() {
|
||||||
this.isActive = false;
|
this.isActive = false;
|
||||||
this.currentStep = 0;
|
this.currentStep = 0;
|
||||||
this.selectedLanguage = 'en';
|
this.selectedLanguage = 'en'; // Will be updated from state
|
||||||
this.overlay = null;
|
this.overlay = null;
|
||||||
this.spotlight = null;
|
this.spotlight = null;
|
||||||
this.popup = null;
|
this.popup = null;
|
||||||
@@ -13,8 +13,8 @@ export class OnboardingManager {
|
|||||||
// Available languages with SVG flags (using flag-icons)
|
// Available languages with SVG flags (using flag-icons)
|
||||||
this.languages = [
|
this.languages = [
|
||||||
{ code: 'en', name: 'English', flag: 'us' },
|
{ code: 'en', name: 'English', flag: 'us' },
|
||||||
{ code: 'zh-cn', name: '简体中文', flag: 'cn' },
|
{ code: 'zh-CN', name: '简体中文', flag: 'cn' },
|
||||||
{ code: 'zh-tw', name: '繁體中文', flag: 'hk' },
|
{ code: 'zh-TW', name: '繁體中文', flag: 'hk' },
|
||||||
{ code: 'ja', name: '日本語', flag: 'jp' },
|
{ code: 'ja', name: '日本語', flag: 'jp' },
|
||||||
{ code: 'ko', name: '한국어', flag: 'kr' },
|
{ code: 'ko', name: '한국어', flag: 'kr' },
|
||||||
{ code: 'es', name: 'Español', flag: 'es' },
|
{ code: 'es', name: 'Español', flag: 'es' },
|
||||||
@@ -98,6 +98,9 @@ export class OnboardingManager {
|
|||||||
// Show language selection modal
|
// Show language selection modal
|
||||||
showLanguageSelection() {
|
showLanguageSelection() {
|
||||||
return new Promise((resolve) => {
|
return new Promise((resolve) => {
|
||||||
|
// Initialize selected language from current settings
|
||||||
|
this.selectedLanguage = state.global.settings.language || 'en';
|
||||||
|
|
||||||
const modal = document.createElement('div');
|
const modal = document.createElement('div');
|
||||||
modal.className = 'language-selection-modal';
|
modal.className = 'language-selection-modal';
|
||||||
modal.innerHTML = `
|
modal.innerHTML = `
|
||||||
@@ -134,24 +137,33 @@ export class OnboardingManager {
|
|||||||
|
|
||||||
// Handle continue button
|
// Handle continue button
|
||||||
document.getElementById('continueLanguageBtn').addEventListener('click', async () => {
|
document.getElementById('continueLanguageBtn').addEventListener('click', async () => {
|
||||||
if (this.selectedLanguage !== 'en') {
|
const currentLanguage = state.global.settings.language || 'en';
|
||||||
// Save language and reload page
|
|
||||||
|
// Only change language if it's different from current setting
|
||||||
|
if (this.selectedLanguage !== currentLanguage) {
|
||||||
await this.changeLanguage(this.selectedLanguage);
|
await this.changeLanguage(this.selectedLanguage);
|
||||||
|
} else {
|
||||||
|
document.body.removeChild(modal);
|
||||||
|
this.startTutorial();
|
||||||
|
resolve();
|
||||||
}
|
}
|
||||||
document.body.removeChild(modal);
|
|
||||||
this.startTutorial();
|
|
||||||
resolve();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
// Handle skip button
|
// Handle skip button - skip entire tutorial
|
||||||
document.getElementById('skipLanguageBtn').addEventListener('click', () => {
|
document.getElementById('skipLanguageBtn').addEventListener('click', () => {
|
||||||
document.body.removeChild(modal);
|
document.body.removeChild(modal);
|
||||||
this.startTutorial();
|
this.skip(); // Skip entire tutorial instead of just language selection
|
||||||
resolve();
|
resolve();
|
||||||
});
|
});
|
||||||
|
|
||||||
// Select English by default
|
// Select current language by default
|
||||||
modal.querySelector('[data-language="en"]').classList.add('selected');
|
const currentLanguageOption = modal.querySelector(`[data-language="${this.selectedLanguage}"]`);
|
||||||
|
if (currentLanguageOption) {
|
||||||
|
currentLanguageOption.classList.add('selected');
|
||||||
|
} else {
|
||||||
|
// Fallback to English if current language not found
|
||||||
|
modal.querySelector('[data-language="en"]').classList.add('selected');
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user