23 lines
490 B
Ruby
23 lines
490 B
Ruby
# typed: true
|
|
module SourceHelper
|
|
def self.source_name_to_class_name
|
|
{
|
|
"furaffinity" => "Domain::Fa::Post",
|
|
"e621" => "Domain::E621::Post",
|
|
"inkbunny" => "Domain::Inkbunny::Post",
|
|
}
|
|
end
|
|
|
|
def self.all_source_names
|
|
source_name_to_class_name.keys
|
|
end
|
|
|
|
def self.source_names_to_class_names(list)
|
|
list.map { |source| source_name_to_class_name[source] }.compact
|
|
end
|
|
|
|
def self.has_all_sources?(list)
|
|
list.sort == all_source_names.sort
|
|
end
|
|
end
|