Sha256: 07b6bc394ab4defa6fd9868198df655742b027ae6d38062f6d3320e589582093

Contents?: true

Size: 772 Bytes

Versions: 8

Compression:

Stored size: 772 Bytes

Contents

require "relaton-cli"

module Metanorma
  class Collection
    module Config
      module Converters
        def bibdata_from_yaml(model, value)
          value and !value.empty? or return
          model.bibdata = Relaton::Cli::YAMLConvertor.convert_single_file(value)
        end

        def bibdata_to_yaml(model, doc)
          doc["bibdata"] = model.bibdata&.to_hash
        end

        def bibdata_from_xml(model, node)
          model.bibdata = Relaton::Cli.parse_xml(node.content)
        end

        def bibdata_to_xml(model, parent, doc)
          b = model.bibdata or return
          elem = b.to_xml(bibdata: true, date_format: :full)
          doc.add_element(parent, elem)
        end

        def nop_to_yaml(model, doc); end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
metanorma-2.0.7 lib/metanorma/collection/config/converters.rb
metanorma-2.0.6 lib/metanorma/collection/config/converters.rb
metanorma-2.0.5 lib/metanorma/collection/config/converters.rb
metanorma-2.0.4 lib/metanorma/collection/config/converters.rb
metanorma-2.0.3 lib/metanorma/collection/config/converters.rb
metanorma-2.0.2 lib/metanorma/collection/config/converters.rb
metanorma-2.0.1 lib/metanorma/collection/config/converters.rb
metanorma-2.0.0 lib/metanorma/collection/config/converters.rb