fix(#4728): guard settings default-model capture when no option is selected
This commit is contained in:
parent
c388d15f2b
commit
23b3206f83
2 changed files with 4 additions and 2 deletions
|
|
@ -7377,7 +7377,7 @@ async function _autosavePreferencesSettings(payload){
|
|||
const pwDirty=!!(pwField&&pwField.value);
|
||||
const modelSel=$('settingsModel');
|
||||
const modelState=(typeof _captureModelDropdownSelection==='function'&&modelSel)
|
||||
? _captureModelDropdownSelection(modelSel)
|
||||
? (_captureModelDropdownSelection(modelSel)||{model:String((modelSel&&modelSel.value)||''),model_provider:null})
|
||||
: {model:String((modelSel&&modelSel.value)||''),model_provider:null};
|
||||
const modelDirty=!!(
|
||||
modelSel&&(
|
||||
|
|
@ -9720,7 +9720,7 @@ async function _applyAuxModels(){
|
|||
async function saveSettings(andClose){
|
||||
const model=($('settingsModel')||{}).value;
|
||||
const modelState=(typeof _captureModelDropdownSelection==='function'&&$('settingsModel'))
|
||||
? _captureModelDropdownSelection($('settingsModel'))
|
||||
? (_captureModelDropdownSelection($('settingsModel'))||{model:String(model||''),model_provider:null})
|
||||
: {model:String(model||''),model_provider:null};
|
||||
const modelChanged=(model||'')!==(_settingsHermesDefaultModelOnOpen||'')||((modelState.model_provider||null)!==(_settingsHermesDefaultModelProviderOnOpen||null));
|
||||
const sendKey=($('settingsSendKey')||{}).value;
|
||||
|
|
|
|||
|
|
@ -169,6 +169,8 @@ def test_save_settings_syncs_default_model_provider_with_saved_model():
|
|||
assert "_settingsHermesDefaultModelProviderOnOpen=(models&&models.active_provider)||null;" in panels_js
|
||||
assert "if(Object.prototype.hasOwnProperty.call(body,'default_model_provider')) _settingsHermesDefaultModelProviderOnOpen=body.default_model_provider||null;" in apply_saved_block
|
||||
assert "(modelState.model_provider||null)!==(_settingsHermesDefaultModelProviderOnOpen||null)" in autosave_block
|
||||
assert "_captureModelDropdownSelection(modelSel)||{model:String((modelSel&&modelSel.value)||''),model_provider:null}" in panels_js
|
||||
assert "_captureModelDropdownSelection($('settingsModel'))||{model:String(model||''),model_provider:null}" in save_block
|
||||
|
||||
|
||||
def test_changelog_mentions_new_chat_default_model_provider_sync():
|
||||
|
|
|
|||
Loading…
Reference in a new issue