@@ -61,6 +61,7 @@ const LOCAL_SETTINGS = [
6161 'lastTargetLanguage' ,
6262 'lastApiEndpoint' ,
6363 'lastOpenaiEndpoint' ,
64+ 'outputFilenamePattern' ,
6465 'ttsEnabled' ,
6566 'textCleanup' ,
6667 'refineTranslation' ,
@@ -150,6 +151,8 @@ export const SettingsManager = {
150151 // API endpoints
151152 { id : 'apiEndpoint' , event : 'change' } ,
152153 { id : 'openaiEndpoint' , event : 'change' } ,
154+ // Output filename pattern
155+ { id : 'outputFilenamePattern' , event : 'change' } ,
153156 // API keys (save to .env)
154157 { id : 'geminiApiKey' , event : 'change' } ,
155158 { id : 'openaiApiKey' , event : 'change' } ,
@@ -299,6 +302,11 @@ export const SettingsManager = {
299302 DomHelpers . setValue ( 'openaiEndpoint' , prefs . lastOpenaiEndpoint ) ;
300303 }
301304
305+ // Apply output filename pattern (naming convention)
306+ if ( prefs . outputFilenamePattern ) {
307+ DomHelpers . setValue ( 'outputFilenamePattern' , prefs . outputFilenamePattern ) ;
308+ }
309+
302310 // Apply last provider AFTER endpoints are set
303311 // This triggers model loading with the correct endpoint
304312 if ( prefs . lastProvider ) {
@@ -412,6 +420,7 @@ export const SettingsManager = {
412420 lastTargetLanguage : this . _getLanguageValue ( 'targetLang' , 'customTargetLang' ) ,
413421 lastApiEndpoint : DomHelpers . getValue ( 'apiEndpoint' ) ,
414422 lastOpenaiEndpoint : DomHelpers . getValue ( 'openaiEndpoint' ) ,
423+ outputFilenamePattern : DomHelpers . getValue ( 'outputFilenamePattern' ) ,
415424 ttsEnabled : ttsEnabledCheckbox ? ttsEnabledCheckbox . checked : false ,
416425 textCleanup : textCleanupCheckbox ? textCleanupCheckbox . checked : false ,
417426 refineTranslation : refineTranslationCheckbox ? refineTranslationCheckbox . checked : false ,
@@ -502,6 +511,22 @@ export const SettingsManager = {
502511 if ( key ) envSettings [ 'POE_API_KEY' ] = key ;
503512 }
504513
514+ // Save endpoints to .env
515+ const ollamaEndpoint = DomHelpers . getValue ( 'apiEndpoint' ) ;
516+ const openaiEndpoint = DomHelpers . getValue ( 'openaiEndpoint' ) ;
517+ if ( ollamaEndpoint ) {
518+ envSettings [ 'OLLAMA_API_ENDPOINT' ] = ollamaEndpoint ;
519+ }
520+ if ( openaiEndpoint ) {
521+ envSettings [ 'OPENAI_API_ENDPOINT' ] = openaiEndpoint ;
522+ }
523+
524+ // Save output filename pattern (naming convention)
525+ const filenamePattern = DomHelpers . getValue ( 'outputFilenamePattern' ) ;
526+ if ( filenamePattern ) {
527+ envSettings [ 'OUTPUT_FILENAME_PATTERN' ] = filenamePattern ;
528+ }
529+
505530 // Also save provider and model as defaults
506531 envSettings [ 'LLM_PROVIDER' ] = provider ;
507532 const model = DomHelpers . getValue ( 'model' ) ;
0 commit comments