[i18n] Translate setting options (#1858)

* Collect options

* Translate setting options

* Update locales [skip ci]

* Normalize key

* Revert change of logic

---------

Co-authored-by: github-actions <github-actions@github.com>
This commit is contained in:
Chenlei Hu
2024-12-10 09:31:13 -08:00
committed by GitHub
parent 57701f6145
commit 112a693f3d
9 changed files with 418 additions and 68 deletions

View File

@@ -52,7 +52,8 @@ test('collect-i18n', async ({ comfyPage }) => {
id: setting.id,
name: setting.name,
tooltip: setting.tooltip,
category: setting.category
category: setting.category,
options: setting.options
}))
})
@@ -61,7 +62,19 @@ test('collect-i18n', async ({ comfyPage }) => {
normalizeI18nKey(setting.id),
{
name: setting.name,
tooltip: setting.tooltip
tooltip: setting.tooltip,
// Don't translate the locale options as each option is in its own language.
// e.g. "English", "中文", "Русский", "日本語", "한국어"
options:
setting.options && setting.id !== 'Comfy.Locale'
? Object.fromEntries(
setting.options.map((option) => {
const optionLabel =
typeof option === 'string' ? option : option.text
return [normalizeI18nKey(optionLabel), optionLabel]
})
)
: undefined
}
])
)

View File

@@ -55,8 +55,11 @@ function getFormAttrs(item: FormItem) {
case 'combo':
attrs['options'] =
typeof item.options === 'function'
? item.options(formValue.value)
? // @ts-expect-error: Audit and deprecate usage of legacy options type:
// (value) => [string | {text: string, value: string}]
item.options(formValue.value)
: item.options
if (typeof item.options[0] !== 'string') {
attrs['optionLabel'] = 'text'
attrs['optionValue'] = 'value'

View File

@@ -20,22 +20,41 @@
import Tag from 'primevue/tag'
import FormItem from '@/components/common/FormItem.vue'
import { useSettingStore } from '@/stores/settingStore'
import { SettingParams } from '@/types/settingTypes'
import type { SettingOption, SettingParams } from '@/types/settingTypes'
import { computed } from 'vue'
import { useI18n } from 'vue-i18n'
import { normalizeI18nKey } from '@/utils/formatUtil'
const props = defineProps<{
setting: SettingParams
}>()
const { t } = useI18n()
function translateOptions(options: (SettingOption | string)[]) {
return options.map((option) => {
const optionLabel = typeof option === 'string' ? option : option.text
const optionValue = typeof option === 'string' ? option : option.value
return {
text: t(
`settingsDialog.${normalizeI18nKey(props.setting.id)}.options.${normalizeI18nKey(optionLabel)}`,
optionLabel
),
value: optionValue
}
})
}
const formItem = computed(() => {
const normalizedId = props.setting.id.replace(/\./g, '_')
const normalizedId = normalizeI18nKey(props.setting.id)
return {
...props.setting,
name: t(`settingsDialog.${normalizedId}.name`, props.setting.name),
tooltip: props.setting.tooltip
? t(`settingsDialog.${normalizedId}.tooltip`, props.setting.tooltip)
: undefined,
options: props.setting.options
? translateOptions(props.setting.options)
: undefined
}
})

View File

@@ -220,7 +220,12 @@
"name": "Enable fast-zoom shortcut (Ctrl + Shift + Drag)"
},
"Comfy_Graph_LinkMarkers": {
"name": "Link midpoint markers"
"name": "Link midpoint markers",
"options": {
"None": "None",
"Circle": "Circle",
"Arrow": "Arrow"
}
},
"Comfy_Graph_ZoomSpeed": {
"name": "Canvas zoom speed"
@@ -241,13 +246,29 @@
"name": "Keybindings unset by the user"
},
"Comfy_LinkRelease_Action": {
"name": "Action on link release (No modifier)"
"name": "Action on link release (No modifier)",
"options": {
"context menu": "context menu",
"search box": "search box",
"no action": "no action"
}
},
"Comfy_LinkRelease_ActionShift": {
"name": "Action on link release (Shift)"
"name": "Action on link release (Shift)",
"options": {
"context menu": "context menu",
"search box": "search box",
"no action": "no action"
}
},
"Comfy_LinkRenderMode": {
"name": "Link Render Mode"
"name": "Link Render Mode",
"options": {
"Straight": "Straight",
"Linear": "Linear",
"Spline": "Spline",
"Hidden": "Hidden"
}
},
"Comfy_Locale": {
"name": "Language"
@@ -273,7 +294,11 @@
},
"Comfy_ModelLibrary_NameFormat": {
"name": "What name to display in the model library tree view",
"tooltip": "Select \"filename\" to render a simplified view of the raw filename (without directory or \".safetensors\" extension) in the model list. Select \"title\" to display the configurable model metadata title."
"tooltip": "Select \"filename\" to render a simplified view of the raw filename (without directory or \".safetensors\" extension) in the model list. Select \"title\" to display the configurable model metadata title.",
"options": {
"filename": "filename",
"title": "title"
}
},
"Comfy_Node_AutoSnapLinkToSlot": {
"name": "Auto snap link to node slot",
@@ -305,13 +330,26 @@
"tooltip": "When dragging a link over a node with viable input slot, highlight the node"
},
"Comfy_NodeBadge_NodeIdBadgeMode": {
"name": "Node ID badge mode"
"name": "Node ID badge mode",
"options": {
"None": "None",
"Show all": "Show all"
}
},
"Comfy_NodeBadge_NodeLifeCycleBadgeMode": {
"name": "Node life cycle badge mode"
"name": "Node life cycle badge mode",
"options": {
"None": "None",
"Show all": "Show all"
}
},
"Comfy_NodeBadge_NodeSourceBadgeMode": {
"name": "Node source badge mode"
"name": "Node source badge mode",
"options": {
"None": "None",
"Show all": "Show all",
"Hide built-in": "Hide built-in"
}
},
"Comfy_NodeInputConversionSubmenus": {
"name": "In the node context menu, place the entries that convert between input/widget in sub-menus."
@@ -326,7 +364,11 @@
"name": "Node library bookmarks customization"
},
"Comfy_NodeSearchBoxImpl": {
"name": "Node search box implementation"
"name": "Node search box implementation",
"options": {
"default": "default",
"litegraph (legacy)": "litegraph (legacy)"
}
},
"Comfy_NodeSearchBoxImpl_NodePreview": {
"name": "Node preview",
@@ -394,10 +436,18 @@
"name": "Show extension panel in settings dialog"
},
"Comfy_Sidebar_Location": {
"name": "Sidebar location"
"name": "Sidebar location",
"options": {
"left": "left",
"right": "right"
}
},
"Comfy_Sidebar_Size": {
"name": "Sidebar size"
"name": "Sidebar size",
"options": {
"normal": "normal",
"small": "small"
}
},
"Comfy_SnapToGrid_GridSize": {
"name": "Snap to grid size",
@@ -413,7 +463,12 @@
"name": "Tree explorer item padding"
},
"Comfy_UseNewMenu": {
"name": "Use new menu"
"name": "Use new menu",
"options": {
"Disabled": "Disabled",
"Top": "Top",
"Bottom": "Bottom"
}
},
"Comfy_Validation_NodeDefs": {
"name": "Validate node definitions (slow)",
@@ -424,7 +479,11 @@
},
"Comfy_WidgetControlMode": {
"name": "Widget control mode",
"tooltip": "Controls when widget values are updated (randomize/increment/decrement), either before the prompt is queued or after."
"tooltip": "Controls when widget values are updated (randomize/increment/decrement), either before the prompt is queued or after.",
"options": {
"before": "before",
"after": "after"
}
},
"Comfy_Window_UnloadConfirmation": {
"name": "Show confirmation when closing window"
@@ -442,7 +501,11 @@
"name": "Sort node IDs when saving workflow"
},
"Comfy_Workflow_WorkflowTabsPosition": {
"name": "Opened workflows position"
"name": "Opened workflows position",
"options": {
"Sidebar": "Sidebar",
"Topbar": "Topbar"
}
},
"LiteGraph_Canvas_MaximumFps": {
"name": "Maxium FPS",

View File

@@ -1333,7 +1333,12 @@
"name": "ファストズームショートカットを有効にするCtrl + Shift + ドラッグ)"
},
"Comfy_Graph_LinkMarkers": {
"name": "リンク中点マーカー"
"name": "リンク中点マーカー",
"options": {
"Arrow": "矢印",
"Circle": "円",
"None": "なし"
}
},
"Comfy_Graph_ZoomSpeed": {
"name": "キャンバスズーム速度"
@@ -1354,13 +1359,29 @@
"name": "ユーザーによって解除されたキー割り当て"
},
"Comfy_LinkRelease_Action": {
"name": "リンクリリース時のアクション(修飾子なし)"
"name": "リンクリリース時のアクション(修飾子なし)",
"options": {
"context menu": "コンテキストメニュー",
"no action": "アクションなし",
"search box": "検索ボックス"
}
},
"Comfy_LinkRelease_ActionShift": {
"name": "リンクリリース時のアクションShift"
"name": "リンクリリース時のアクションShift",
"options": {
"context menu": "コンテキストメニュー",
"no action": "アクションなし",
"search box": "検索ボックス"
}
},
"Comfy_LinkRenderMode": {
"name": "リンクレンダーモード"
"name": "リンクレンダーモード",
"options": {
"Hidden": "隠す",
"Linear": "リニア",
"Spline": "スプライン",
"Straight": "ストレート"
}
},
"Comfy_Locale": {
"name": "言語"
@@ -1386,16 +1407,33 @@
},
"Comfy_ModelLibrary_NameFormat": {
"name": "モデルライブラリツリービューに表示する名前",
"options": {
"filename": "ファイル名",
"title": "タイトル"
},
"tooltip": "\"ファイル名\"を選択すると、モデルリストにディレクトリや\".safetensors\"拡張子なしの生のファイル名の簡略化されたビューが表示されます。\"タイトル\"を選択すると、設定可能なモデルメタデータタイトルが表示されます。"
},
"Comfy_NodeBadge_NodeIdBadgeMode": {
"name": "ードIDバッジモード"
"name": "ードIDバッジモード",
"options": {
"None": "なし",
"Show all": "すべて表示"
}
},
"Comfy_NodeBadge_NodeLifeCycleBadgeMode": {
"name": "ノードライフサイクルバッジモード"
"name": "ノードライフサイクルバッジモード",
"options": {
"None": "なし",
"Show all": "すべて表示"
}
},
"Comfy_NodeBadge_NodeSourceBadgeMode": {
"name": "ノードソースバッジモード"
"name": "ノードソースバッジモード",
"options": {
"Hide built-in": "組み込みを隠す",
"None": "なし",
"Show all": "すべて表示"
}
},
"Comfy_NodeInputConversionSubmenus": {
"name": "ノードのコンテキストメニューに、入力/ウィジェット間の変換を行うエントリをサブメニューに配置します。"
@@ -1410,7 +1448,11 @@
"name": "ユニークな名前のードライブラリのブックマークv2"
},
"Comfy_NodeSearchBoxImpl": {
"name": "ノード検索ボックスの実装"
"name": "ノード検索ボックスの実装",
"options": {
"default": "デフォルト",
"litegraph (legacy)": "litegraph (レガシー)"
}
},
"Comfy_NodeSearchBoxImpl_NodePreview": {
"name": "ノードプレビュー",
@@ -1507,10 +1549,18 @@
"name": "設定ダイアログに拡張パネルを表示"
},
"Comfy_Sidebar_Location": {
"name": "サイドバーの位置"
"name": "サイドバーの位置",
"options": {
"left": "左",
"right": "右"
}
},
"Comfy_Sidebar_Size": {
"name": "サイドバーのサイズ"
"name": "サイドバーのサイズ",
"options": {
"normal": "通常",
"small": "小"
}
},
"Comfy_SnapToGrid_GridSize": {
"name": "グリッドサイズにスナップ",
@@ -1526,7 +1576,12 @@
"name": "ツリーエクスプローラーアイテムのパディング"
},
"Comfy_UseNewMenu": {
"name": "新しいメニューを使用"
"name": "新しいメニューを使用",
"options": {
"Bottom": "下",
"Disabled": "無効",
"Top": "上"
}
},
"Comfy_Validation_NodeDefs": {
"name": "ノード定義を検証(遅い)",
@@ -1537,6 +1592,10 @@
},
"Comfy_WidgetControlMode": {
"name": "ウィジェット制御モード",
"options": {
"after": "後",
"before": "前"
},
"tooltip": "ウィジェットの値が更新されるタイミングを制御します(ランダム化/インクリメント/デクリメント)、プロンプトがキューに入れられる前または後のいずれかです。"
},
"Comfy_Window_UnloadConfirmation": {
@@ -1555,7 +1614,11 @@
"name": "ワークフローを保存する際にードIDをソート"
},
"Comfy_Workflow_WorkflowTabsPosition": {
"name": "開いているワークフローの位置"
"name": "開いているワークフローの位置",
"options": {
"Sidebar": "サイドバー",
"Topbar": "トップバー"
}
},
"LiteGraph_Canvas_MaximumFps": {
"name": "最大FPS",

View File

@@ -1316,7 +1316,12 @@
"name": "빠른 확대/축소 단축키 활성화 (Ctrl + Shift + 드래그)"
},
"Comfy_Graph_LinkMarkers": {
"name": "링크 중간점 마커"
"name": "링크 중간점 마커",
"options": {
"Arrow": "화살표",
"Circle": "원",
"None": "없음"
}
},
"Comfy_Graph_ZoomSpeed": {
"name": "캔버스 확대/축소 속도"
@@ -1337,13 +1342,29 @@
"name": "사용자가 해제한 키 바인딩"
},
"Comfy_LinkRelease_Action": {
"name": "링크 해제 시 동작 (수정자 없음)"
"name": "링크 해제 시 동작 (수정자 없음)",
"options": {
"context menu": "컨텍스트 메뉴",
"no action": "작업 없음",
"search box": "검색 상자"
}
},
"Comfy_LinkRelease_ActionShift": {
"name": "링크 해제 시 동작 (Shift)"
"name": "링크 해제 시 동작 (Shift)",
"options": {
"context menu": "컨텍스트 메뉴",
"no action": "작업 없음",
"search box": "검색 상자"
}
},
"Comfy_LinkRenderMode": {
"name": "링크 렌더 모드"
"name": "링크 렌더 모드",
"options": {
"Hidden": "숨김",
"Linear": "선형",
"Spline": "스플라인",
"Straight": "직선"
}
},
"Comfy_Locale": {
"name": "언어"
@@ -1369,16 +1390,33 @@
},
"Comfy_ModelLibrary_NameFormat": {
"name": "모델 라이브러리 트리 뷰에 표시할 이름",
"options": {
"filename": "파일 이름",
"title": "제목"
},
"tooltip": "\"파일 이름\"을 선택하면 모델 목록에서 원시 파일 이름(디렉토리 또는 \".safetensors\" 확장자 없이)의 단순화된 뷰가 렌더링됩니다. \"제목\"을 선택하면 구성 가능한 모델 메타데이터 제목이 표시됩니다."
},
"Comfy_NodeBadge_NodeIdBadgeMode": {
"name": "노드 ID 배지 모드"
"name": "노드 ID 배지 모드",
"options": {
"None": "없음",
"Show all": "모두 표시"
}
},
"Comfy_NodeBadge_NodeLifeCycleBadgeMode": {
"name": "노드 생명 주기 배지 모드"
"name": "노드 생명 주기 배지 모드",
"options": {
"None": "없음",
"Show all": "모두 표시"
}
},
"Comfy_NodeBadge_NodeSourceBadgeMode": {
"name": "노드 출처 배지 모드"
"name": "노드 출처 배지 모드",
"options": {
"Hide built-in": "내장 숨기기",
"None": "없음",
"Show all": "모두 표시"
}
},
"Comfy_NodeInputConversionSubmenus": {
"name": "노드 컨텍스트 메뉴에서 입력/위젯 간 변환 항목을 하위 메뉴에 배치합니다."
@@ -1393,7 +1431,11 @@
"name": "고유 이름을 가진 노드 라이브러리 북마크 v2"
},
"Comfy_NodeSearchBoxImpl": {
"name": "노드 검색 상자 구현"
"name": "노드 검색 상자 구현",
"options": {
"default": "기본",
"litegraph (legacy)": "litegraph (구버전)"
}
},
"Comfy_NodeSearchBoxImpl_NodePreview": {
"name": "노드 미리보기",
@@ -1490,10 +1532,18 @@
"name": "설정 대화 상자에서 확장 패널 표시"
},
"Comfy_Sidebar_Location": {
"name": "사이드바 위치"
"name": "사이드바 위치",
"options": {
"left": "왼쪽",
"right": "오른쪽"
}
},
"Comfy_Sidebar_Size": {
"name": "사이드바 크기"
"name": "사이드바 크기",
"options": {
"normal": "보통",
"small": "작음"
}
},
"Comfy_SnapToGrid_GridSize": {
"name": "그리드 크기에 스냅",
@@ -1509,7 +1559,12 @@
"name": "트리 탐색기 항목 패딩"
},
"Comfy_UseNewMenu": {
"name": "새 메뉴 사용"
"name": "새 메뉴 사용",
"options": {
"Bottom": "하단",
"Disabled": "비활성화",
"Top": "상단"
}
},
"Comfy_Validation_NodeDefs": {
"name": "노드 정의 유효성 검사 (느림)",
@@ -1520,6 +1575,10 @@
},
"Comfy_WidgetControlMode": {
"name": "위젯 제어 모드",
"options": {
"after": "다음",
"before": "이전"
},
"tooltip": "위젯 값이 업데이트되는 시점을 제어합니다 (무작위화/증가/감소), 프롬프트가 큐에 추가되기 전 또는 후입니다."
},
"Comfy_Window_UnloadConfirmation": {
@@ -1538,7 +1597,11 @@
"name": "워크플로 저장 시 노드 ID 정렬"
},
"Comfy_Workflow_WorkflowTabsPosition": {
"name": "열린 워크플로 위치"
"name": "열린 워크플로 위치",
"options": {
"Sidebar": "사이드바",
"Topbar": "상단바"
}
},
"LiteGraph_Canvas_MaximumFps": {
"name": "최대 FPS",

View File

@@ -1333,7 +1333,12 @@
"name": "Включить быстрый зум с помощью сочетания клавиш (Ctrl + Shift + Перетаскивание)"
},
"Comfy_Graph_LinkMarkers": {
"name": "Маркер середины ссылки"
"name": "Маркер середины ссылки",
"options": {
"Arrow": "Стрелка",
"Circle": "Круг",
"None": "Нет"
}
},
"Comfy_Graph_ZoomSpeed": {
"name": "Скорость зума холста"
@@ -1354,13 +1359,29 @@
"name": "Сочетания клавиш, снятые пользователем"
},
"Comfy_LinkRelease_Action": {
"name": "Действие при отпускании ссылки (без модификатора)"
"name": "Действие при отпускании ссылки (без модификатора)",
"options": {
"context menu": "контекстное меню",
"no action": "без действия",
"search box": "поисковая строка"
}
},
"Comfy_LinkRelease_ActionShift": {
"name": "Действие при отпускании ссылки (Shift)"
"name": "Действие при отпускании ссылки (Shift)",
"options": {
"context menu": "контекстное меню",
"no action": "без действия",
"search box": "поисковая строка"
}
},
"Comfy_LinkRenderMode": {
"name": "Режим рендеринга ссылки"
"name": "Режим рендеринга ссылки",
"options": {
"Hidden": "Скрытый",
"Linear": "Линейный",
"Spline": "Сплайн",
"Straight": "Прямой"
}
},
"Comfy_Locale": {
"name": "Язык"
@@ -1386,16 +1407,33 @@
},
"Comfy_ModelLibrary_NameFormat": {
"name": "Какое имя отображать в древовидном представлении библиотеки моделей",
"options": {
"filename": "имя файла",
"title": "название"
},
"tooltip": "Выберите \"имя файла\", чтобы отобразить упрощенный вид сырого имени файла (без директории или расширения \".safetensors\") в списке моделей. Выберите \"название\", чтобы отобразить настраиваемое название метаданных модели."
},
"Comfy_NodeBadge_NodeIdBadgeMode": {
"name": "Режим значка ID узла"
"name": "Режим значка ID узла",
"options": {
"None": "Нет",
"Show all": "Показать все"
}
},
"Comfy_NodeBadge_NodeLifeCycleBadgeMode": {
"name": "Режим значка жизненного цикла узла"
"name": "Режим значка жизненного цикла узла",
"options": {
"None": "Нет",
"Show all": "Показать все"
}
},
"Comfy_NodeBadge_NodeSourceBadgeMode": {
"name": "Режим значка источника узла"
"name": "Режим значка источника узла",
"options": {
"Hide built-in": "Скрыть встроенные",
"None": "Нет",
"Show all": "Показать все"
}
},
"Comfy_NodeInputConversionSubmenus": {
"name": "В контекстном меню узла разместите элементы, которые конвертируют между вводом/виджетом в подменю."
@@ -1410,7 +1448,11 @@
"name": "Закладки библиотеки узлов v2 с уникальным именем"
},
"Comfy_NodeSearchBoxImpl": {
"name": "Реализация поискового поля узлов"
"name": "Реализация поискового поля узлов",
"options": {
"default": "по умолчанию",
"litegraph (legacy)": "litegraph (устаревший)"
}
},
"Comfy_NodeSearchBoxImpl_NodePreview": {
"name": "Предварительный просмотр узла",
@@ -1507,10 +1549,18 @@
"name": "Показать панель расширений в диалоговом окне настроек"
},
"Comfy_Sidebar_Location": {
"name": "Расположение боковой панели"
"name": "Расположение боковой панели",
"options": {
"left": "слева",
"right": "справа"
}
},
"Comfy_Sidebar_Size": {
"name": "Размер боковой панели"
"name": "Размер боковой панели",
"options": {
"normal": "нормальный",
"small": "маленький"
}
},
"Comfy_SnapToGrid_GridSize": {
"name": "Размер сетки привязки",
@@ -1526,7 +1576,12 @@
"name": "Отступ элемента в проводнике дерева"
},
"Comfy_UseNewMenu": {
"name": "Использовать новое меню"
"name": "Использовать новое меню",
"options": {
"Bottom": "Внизу",
"Disabled": "Отключено",
"Top": "Вверху"
}
},
"Comfy_Validation_NodeDefs": {
"name": "Проверка определений узлов (медленно)",
@@ -1537,6 +1592,10 @@
},
"Comfy_WidgetControlMode": {
"name": "Режим управления виджетом",
"options": {
"after": "после",
"before": "до"
},
"tooltip": "Управляет тем, когда обновляются значения виджета (случайные/увеличение/уменьшение), либо до того, как запрос будет поставлен в очередь, либо после."
},
"Comfy_Window_UnloadConfirmation": {
@@ -1555,7 +1614,11 @@
"name": "Сортировать ID узлов при сохранении рабочего процесса"
},
"Comfy_Workflow_WorkflowTabsPosition": {
"name": "Положение открытых рабочих процессов"
"name": "Положение открытых рабочих процессов",
"options": {
"Sidebar": "Боковая панель",
"Topbar": "Верхняя панель"
}
},
"LiteGraph_Canvas_MaximumFps": {
"name": "Максимум FPS",

View File

@@ -1333,7 +1333,12 @@
"name": "启用快速缩放快捷键Ctrl + Shift + 拖动)"
},
"Comfy_Graph_LinkMarkers": {
"name": "链接中点标记"
"name": "链接中点标记",
"options": {
"Arrow": "箭头",
"Circle": "圆",
"None": "无"
}
},
"Comfy_Graph_ZoomSpeed": {
"name": "画布缩放速度"
@@ -1354,13 +1359,29 @@
"name": "用户取消的键绑定"
},
"Comfy_LinkRelease_Action": {
"name": "释放链接时的操作(无修饰符)"
"name": "释放链接时的操作(无修饰符)",
"options": {
"context menu": "上下文菜单",
"no action": "无操作",
"search box": "搜索框"
}
},
"Comfy_LinkRelease_ActionShift": {
"name": "释放链接时的操作Shift"
"name": "释放链接时的操作Shift",
"options": {
"context menu": "上下文菜单",
"no action": "无操作",
"search box": "搜索框"
}
},
"Comfy_LinkRenderMode": {
"name": "链接渲染模式"
"name": "链接渲染模式",
"options": {
"Hidden": "隐藏",
"Linear": "线性",
"Spline": "样条",
"Straight": "直线"
}
},
"Comfy_Locale": {
"name": "语言"
@@ -1386,16 +1407,33 @@
},
"Comfy_ModelLibrary_NameFormat": {
"name": "在模型库树视图中显示的名称",
"options": {
"filename": "文件名",
"title": "标题"
},
"tooltip": "选择“文件名”以在模型列表中呈现原始文件名的简化视图(不带目录或“.safetensors”扩展名。选择“标题”以显示可配置的模型元数据标题。"
},
"Comfy_NodeBadge_NodeIdBadgeMode": {
"name": "节点ID徽章模式"
"name": "节点ID徽章模式",
"options": {
"None": "无",
"Show all": "显示全部"
}
},
"Comfy_NodeBadge_NodeLifeCycleBadgeMode": {
"name": "节点生命周期徽章模式"
"name": "节点生命周期徽章模式",
"options": {
"None": "无",
"Show all": "显示全部"
}
},
"Comfy_NodeBadge_NodeSourceBadgeMode": {
"name": "节点源徽章模式"
"name": "节点源徽章模式",
"options": {
"Hide built-in": "隐藏内置",
"None": "无",
"Show all": "显示全部"
}
},
"Comfy_NodeInputConversionSubmenus": {
"name": "在节点上下文菜单中,将输入/小部件之间转换的条目放置在子菜单中。"
@@ -1410,7 +1448,11 @@
"name": "节点库书签v2及唯一名称"
},
"Comfy_NodeSearchBoxImpl": {
"name": "节点搜索框实现"
"name": "节点搜索框实现",
"options": {
"default": "默认",
"litegraph (legacy)": "litegraph遗留"
}
},
"Comfy_NodeSearchBoxImpl_NodePreview": {
"name": "节点预览",
@@ -1507,10 +1549,18 @@
"name": "在设置对话框中显示扩展面板"
},
"Comfy_Sidebar_Location": {
"name": "侧边栏位置"
"name": "侧边栏位置",
"options": {
"left": "左侧",
"right": "右侧"
}
},
"Comfy_Sidebar_Size": {
"name": "侧边栏大小"
"name": "侧边栏大小",
"options": {
"normal": "正常",
"small": "小"
}
},
"Comfy_SnapToGrid_GridSize": {
"name": "吸附到网格大小",
@@ -1526,7 +1576,12 @@
"name": "树形浏览器项目内边距"
},
"Comfy_UseNewMenu": {
"name": "使用新菜单"
"name": "使用新菜单",
"options": {
"Bottom": "底部",
"Disabled": "禁用",
"Top": "顶部"
}
},
"Comfy_Validation_NodeDefs": {
"name": "验证节点定义(慢)",
@@ -1537,6 +1592,10 @@
},
"Comfy_WidgetControlMode": {
"name": "小部件控制模式",
"options": {
"after": "之后",
"before": "之前"
},
"tooltip": "控制小部件值的更新时机(随机/增量/减量),可以在提示排队之前或之后。"
},
"Comfy_Window_UnloadConfirmation": {
@@ -1555,7 +1614,11 @@
"name": "保存工作流时排序节点ID"
},
"Comfy_Workflow_WorkflowTabsPosition": {
"name": "已打开工作流的位置"
"name": "已打开工作流的位置",
"options": {
"Sidebar": "侧边栏",
"Topbar": "顶部栏"
}
},
"LiteGraph_Canvas_MaximumFps": {
"name": "最大FPS",

View File

@@ -54,7 +54,7 @@ export interface FormItem {
type: SettingInputType | SettingCustomRenderer
tooltip?: string
attrs?: Record<string, any>
options?: Array<string | SettingOption> | ((value: any) => SettingOption[])
options?: Array<string | SettingOption>
}
export interface ISettingGroup {