retrospring/lib/use_case/data_export/questions.rb
Georg Gadinger 9413d23a02 let Zeitwerk autoload the lib/ directory
this also allows the UseCase classes to be hot reloaded in dev 🎉

- remove use_case requires (except for the exporter as Zeitwerk
  doesn't know about the subclasses)
- move version.rb to lib/retrospring so that Zeitwerk knows where
  to find Retrospring::Version
2022-12-29 20:57:28 +01:00

25 lines
552 B
Ruby

# frozen_string_literal: true
module UseCase
module DataExport
class Questions < UseCase::DataExport::Base
IGNORED_FIELDS = %i[
author_identifier
].freeze
def files = {
"questions.json" => json_file!(
questions: user.questions.map(&method(:collect_question))
)
}
def collect_question(question)
{}.tap do |h|
(column_names(::Question) - IGNORED_FIELDS).each do |field|
h[field] = question[field]
end
end
end
end
end
end