Sha256: 20d00933da6f9d9f318dcef9964d00672e86230d1669461a473cb9dbc6048890

Contents?: true

Size: 651 Bytes

Versions: 1

Compression:

Stored size: 651 Bytes

Contents

# frozen_string_literal: true
require 'active_support/core_ext/hash/keys'
require 'yaml'

class Array
  def deep_stringify_keys
    inject([]) { |accum, value|
      if (value.is_a?(Hash) or value.is_a?(Array))
        new_val = value.deep_stringify_keys
        accum.push new_val
      else
        accum.push value
      end
      accum
    }
  end
end

module Dato
  module Dump
    module Format
      module Yaml
        def self.dump(value)
          YAML.dump(value.deep_stringify_keys).chomp.gsub(/^\-+\n/, '')
        end

        def self.frontmatter_dump(value)
          "---\n#{dump(value)}\n---"
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
dato-0.1.12 lib/dato/dump/format/yaml.rb