Sha256: 52c66d01b6c0d50d85c7254a78cc66cc62afc2d7ddd7bd518036cb438bea334c

Contents?: true

Size: 708 Bytes

Versions: 21

Compression:

Stored size: 708 Bytes

Contents

# frozen_string_literal: true

module Commonmeta
  module Writers
    module CsvWriter
      require 'csv'

      def csv
        return nil unless valid?
        
        authors = contributors.select { |c| c['contributorRoles'] == ['Author'] }
 
        bib = {
          doi: doi_from_url(id),
          url: url,
          registered: date['published'],
          state: state,
          type: Commonmeta::Utils::CM_TO_BIB_TRANSLATIONS.fetch(type, 'misc'),
          title: parse_attributes(titles, content: 'title', first: true),
          author: authors_as_string(authors),
          publisher: publisher['name']
        }.values

        CSV.generate { |csv| csv << bib }
      end
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
commonmeta-ruby-3.13 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.12.1 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.12.0 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.11.0 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.9.0 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.8.3 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.8.2 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.8.1 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.8.0 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.7.3 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.7.2 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.7.1 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.7.0 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.6.1 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.6 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.5.5 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.5.4 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.5.3 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.5.2 lib/commonmeta/writers/csv_writer.rb
commonmeta-ruby-3.5.1 lib/commonmeta/writers/csv_writer.rb