From 48f7e53256f95607d34bc5b102ede152a46df347 Mon Sep 17 00:00:00 2001 From: Sergey Molchanovsky Date: Sun, 24 May 2026 17:22:35 +0300 Subject: [PATCH 1/3] fix(decimal-input): Preserve zero value display on blur Previously, a value of `0` in the DecimalInput component would be cleared when the input lost focus, even if the `keepZeroOnBlur` prop was set to `true`. This change ensures that `0` is properly formatted and displayed, aligning with the intended behavior of the `keepZeroOnBlur` prop. --- dashboard/src/components/common/decimal-input.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dashboard/src/components/common/decimal-input.tsx b/dashboard/src/components/common/decimal-input.tsx index 010e1ac91..b06ee5fc7 100644 --- a/dashboard/src/components/common/decimal-input.tsx +++ b/dashboard/src/components/common/decimal-input.tsx @@ -50,18 +50,18 @@ export const DecimalInput = React.forwardRef { if (isEditing) return - if (keepZeroOnBlur && rawInput === '0' && externalDisplayValue === '') return if (rawInput !== '' && rawInput !== externalDisplayValue) { setRawInput('') } - }, [externalDisplayValue, isEditing, keepZeroOnBlur, rawInput]) + }, [externalDisplayValue, isEditing, rawInput]) const getStoredValue = React.useCallback( (displayValue: number) => { From 5761b248e5adb2ef3a4cc9c89d3faaedf5dc2d82 Mon Sep 17 00:00:00 2001 From: Sergey Molchanovsky Date: Sun, 24 May 2026 18:10:26 +0300 Subject: [PATCH 2/3] enhance translation --- dashboard/public/statics/locales/en.json | 4 ++-- dashboard/public/statics/locales/ru.json | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dashboard/public/statics/locales/en.json b/dashboard/public/statics/locales/en.json index 8e4dbde0d..f7c83573c 100644 --- a/dashboard/public/statics/locales/en.json +++ b/dashboard/public/statics/locales/en.json @@ -966,7 +966,7 @@ "suffix": "Username Suffix", "dataLimit": "Data Limit", "hwidLimit": "HWID Limit", - "hwidLimitPlaceholder": "Default, 0 = unlimited", + "hwidLimitPlaceholder": "Empty field = fallback, 0 = unlimited", "expire": "Expire duration", "onHoldTimeout": "OnHold Timeout", "method": "Method", @@ -1620,7 +1620,7 @@ "custom": "Custom", "dataLimit": "Data Limit", "hwidLimit": "HWID Limit", - "hwidLimitPlaceholder": "Fallback, 0 = unlimited", + "hwidLimitPlaceholder": "Empty field = fallback, 0 = unlimited", "days": "Days", "editUser": "Modify user", "editUserTitle": "Modify user", diff --git a/dashboard/public/statics/locales/ru.json b/dashboard/public/statics/locales/ru.json index 34c5c8afd..96bd76e85 100644 --- a/dashboard/public/statics/locales/ru.json +++ b/dashboard/public/statics/locales/ru.json @@ -952,7 +952,7 @@ "suffix": "Суффикс имени пользователя", "dataLimit": "Лимит данных", "hwidLimit": "Лимит HWID", - "hwidLimitPlaceholder": "По умолчанию, 0 = без лимита", + "hwidLimitPlaceholder": "Пустое значение = fallback, 0 = безлимит", "expire": "Срок действия", "onHoldTimeout": "Тайм-аут при ожидании", "method": "Метод", @@ -1248,7 +1248,7 @@ "userDialog.custom": "Пользовательский", "userDialog.dataLimit": "Лимит трафика", "userDialog.hwidLimit": "Лимит HWID", - "userDialog.hwidLimitPlaceholder": "По умолчанию, 0 = без лимита", + "userDialog.hwidLimitPlaceholder": "Пустое значение = fallback, 0 = безлимит", "userDialog.days": "Дни", "userDialog.editUser": "Редактировать", "userDialog.editUserTitle": "Редактировать пользователя", @@ -2854,7 +2854,7 @@ "revokeSubscription": "Отозвать подписку", "usage": "Использование", "hwidLimit": "Лимит HWID", - "hwidLimitPlaceholder": "По умолчанию, 0 = без лимита", + "hwidLimitPlaceholder": "Пустое значение = fallback, 0 = безлимит", "deleteSuccess": "Пользователь «{{name}}» был успешно удалён.", "resetUsageSuccess": "Использование пользователя «{{name}}» было сброшено.", "revokeSubSuccess": "Подписка пользователя «{{name}}» была отозвана.", From 9f77153b4b6302994b9426e82984eafbd58f6bbf Mon Sep 17 00:00:00 2001 From: Sergey Molchanovsky Date: Mon, 25 May 2026 13:58:58 +0300 Subject: [PATCH 3/3] fix ru translation --- dashboard/public/statics/locales/ru.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dashboard/public/statics/locales/ru.json b/dashboard/public/statics/locales/ru.json index 96bd76e85..e14775f23 100644 --- a/dashboard/public/statics/locales/ru.json +++ b/dashboard/public/statics/locales/ru.json @@ -1254,7 +1254,7 @@ "userDialog.editUserTitle": "Редактировать пользователя", "userDialog.endDate": "Дата окончания", "userDialog.expiryDate": "Дата истечения срока", - "userDialog.timeOutDate": "Удерживать до", + "userDialog.timeOutDate": "Отложить запуск до", "userDialog.generatedByDefault": "по умолчанию", "userDialog.hours": "Часы", "userDialog.method": "Метод",