From 9e59ffc3d819faf1d6875de36f4ff1e934052ef4 Mon Sep 17 00:00:00 2001 From: QuentinHsu Date: Wed, 3 Jun 2026 18:27:07 +0800 Subject: [PATCH] fix(model-pricing): align pricing mode editor spacing - add consistent tab and field spacing so each pricing mode keeps the same visual rhythm. - wrap per-request and tiered sections in shared field groups to match the per-token form structure. - keep fixed-price descriptions and validation messages aligned with the updated field layout. --- .../models/model-pricing-sheet.tsx | 108 +++++++++--------- 1 file changed, 56 insertions(+), 52 deletions(-) diff --git a/web/default/src/features/system-settings/models/model-pricing-sheet.tsx b/web/default/src/features/system-settings/models/model-pricing-sheet.tsx index 9b033d9c..f35afb80 100644 --- a/web/default/src/features/system-settings/models/model-pricing-sheet.tsx +++ b/web/default/src/features/system-settings/models/model-pricing-sheet.tsx @@ -839,7 +839,11 @@ export const ModelPricingEditorPanel = forwardRef< )} /> - + {t('Per-token')} @@ -850,8 +854,8 @@ export const ModelPricingEditorPanel = forwardRef< - - + + {t('Input price')} - - ( - - {t('Fixed price')} - - - $ - { - const value = event.target.value - if (numericDraftRegex.test(value)) { - field.onChange(value) - } - }} - /> - - {t('per request')} - - - - - {t( - 'Cost in USD per request, regardless of tokens used.' - )} - - - - )} - /> + + + ( + + + {t('Fixed price')} + + + $ + { + const value = event.target.value + if (numericDraftRegex.test(value)) { + field.onChange(value) + } + }} + /> + + {t('per request')} + + + + + {t( + 'Cost in USD per request, regardless of tokens used.' + )} + + + + + )} + /> + - - + + + +