1
0
mirror of https://github.com/funamitech/mastodon synced 2024-12-12 05:39:02 +09:00
YuruToot/app/models/user_settings/namespace.rb

22 lines
404 B
Ruby
Raw Normal View History

# frozen_string_literal: true
class UserSettings::Namespace
attr_reader :name, :definitions
def initialize(name)
@name = name.to_sym
@definitions = {}
end
def configure(&block)
instance_eval(&block)
self
end
def setting(key, options = {})
UserSettings::Setting.new(key, options.merge(namespace: name)).tap do |s|
@definitions[s.key] = s
end
end
end