feat(models): support object type in extra parameters (#2158)

Add 'object' as a new value type for model extra parameters so users can
configure nested JSON like {"thinking": {"type": "disabled"}} required by
DeepSeek-v4 non-thinking mode (refs #2157).

UI: add 'Object' option to the type dropdown in ExtraArgsEditor; render a
full-width JSON Textarea (resize-y, monospace) with live JSON validation.
On save, JSON is parsed and rejected if not a plain object.

Also make the model edit and add-model popovers scrollable: cap height at
min(70vh, --radix-popover-content-available-height), stop wheel/touchmove
propagation so the dialog's react-remove-scroll lock doesn't swallow
events, and use overscroll-none to avoid the bottom border seam from
rubber-band overscroll.

i18n updated for all 8 locales.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Junyan Chin
2026-05-01 20:44:17 +08:00
committed by GitHub
parent b9662250a6
commit 8db55267d8
13 changed files with 184 additions and 57 deletions
+3
View File
@@ -202,6 +202,9 @@ const ruRU = {
string: 'Строка',
number: 'Число',
boolean: 'Логический',
object: 'Объект',
objectJsonPlaceholder: '{ "type": "disabled" }',
invalidJsonObject: 'Значение должно быть допустимым объектом JSON',
selectModelProvider: 'Выберите провайдера модели',
modelProviderDescription:
'Пожалуйста, введите название модели, предоставленное провайдером',