DEV: Refactor subclasses in ThemeSettingsManager to individual files (#25605)

Why this change?

One Ruby class per file improves readability
This commit is contained in:
Alan Guo Xiang Tan
2024-02-08 12:59:52 +08:00
committed by GitHub
parent 7ce76143ac
commit fb0e656cb7
12 changed files with 197 additions and 185 deletions

View File

@ -0,0 +1,19 @@
# frozen_string_literal: true
class ThemeSettingsManager::Float < ThemeSettingsManager
def self.cast(value)
value.to_f
end
def value
self.class.cast(super)
end
def value=(new_value)
super(self.class.cast(new_value))
end
def is_valid_value?(new_value)
(@opts[:min]..@opts[:max]).include? new_value.to_f
end
end