Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions dashboard/public/statics/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Expand Down Expand Up @@ -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",
Expand Down
8 changes: 4 additions & 4 deletions dashboard/public/statics/locales/ru.json
Original file line number Diff line number Diff line change
Expand Up @@ -952,7 +952,7 @@
"suffix": "Суффикс имени пользователя",
"dataLimit": "Лимит данных",
"hwidLimit": "Лимит HWID",
"hwidLimitPlaceholder": "По умолчанию, 0 = без лимита",
"hwidLimitPlaceholder": "Пустое значение = fallback, 0 = безлимит",
"expire": "Срок действия",
"onHoldTimeout": "Тайм-аут при ожидании",
"method": "Метод",
Expand Down Expand Up @@ -1248,13 +1248,13 @@
"userDialog.custom": "Пользовательский",
"userDialog.dataLimit": "Лимит трафика",
"userDialog.hwidLimit": "Лимит HWID",
"userDialog.hwidLimitPlaceholder": "По умолчанию, 0 = без лимита",
"userDialog.hwidLimitPlaceholder": "Пустое значение = fallback, 0 = безлимит",
"userDialog.days": "Дни",
"userDialog.editUser": "Редактировать",
"userDialog.editUserTitle": "Редактировать пользователя",
"userDialog.endDate": "Дата окончания",
"userDialog.expiryDate": "Дата истечения срока",
"userDialog.timeOutDate": "Удерживать до",
"userDialog.timeOutDate": "Отложить запуск до",
"userDialog.generatedByDefault": "по умолчанию",
"userDialog.hours": "Часы",
"userDialog.method": "Метод",
Expand Down Expand Up @@ -2854,7 +2854,7 @@
"revokeSubscription": "Отозвать подписку",
"usage": "Использование",
"hwidLimit": "Лимит HWID",
"hwidLimitPlaceholder": "По умолчанию, 0 = без лимита",
"hwidLimitPlaceholder": "Пустое значение = fallback, 0 = безлимит",
"deleteSuccess": "Пользователь «{{name}}» был успешно удалён.",
"resetUsageSuccess": "Использование пользователя «{{name}}» было сброшено.",
"revokeSubSuccess": "Подписка пользователя «{{name}}» была отозвана.",
Expand Down
8 changes: 4 additions & 4 deletions dashboard/src/components/common/decimal-input.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -50,18 +50,18 @@ export const DecimalInput = React.forwardRef<HTMLInputElement, DecimalInputProps
if (value === null || value === undefined) return ''

const displayValue = toDisplayValue(value)
if (displayValue === undefined || !Number.isFinite(displayValue) || displayValue <= 0) return ''
if (displayValue === undefined || !Number.isFinite(displayValue) || displayValue < 0) return ''
if (displayValue === 0) return keepZeroOnBlur ? formatDisplayValue(0) : ''

return formatDisplayValue(displayValue)
}, [formatDisplayValue, toDisplayValue, value])
}, [formatDisplayValue, keepZeroOnBlur, toDisplayValue, value])

React.useEffect(() => {
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) => {
Expand Down