Sha256: 2a962437f44cd240474cc681ef8cb9c5d51737952528aa5f338ecb8134057417

Contents?: true

Size: 795 Bytes

Versions: 10

Compression:

Stored size: 795 Bytes

Contents

# frozen_string_literal: true

module WCC::Blogs
  class Metadata
    extend WCC::Blogs::Utils

    attr_reader :raw

    def initialize(raw)
      @raw = raw
    end

    define_camelcase_alias(
      'id',
      'canonical_url',
      'meta_description',
      'meta_flag'
    ) do |camelcase|
      raw[camelcase]
    end

    alias canonical_link canonical_url

    define_camelcase_alias('meta_keywords') do |camelcase|
      next unless keywords = raw[camelcase]

      # Currently the json looks like this:
      # "metaKeywords": {
      #   "metaKeywords": "regeneration, recovery"
      # },
      # TODO: make it like this - "metaKeywords": "regeneration, recovery"
      keywords = keywords[camelcase] if keywords.is_a?(Hash) && keywords[camelcase]

      keywords
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
wcc-blogs-client-0.7.4 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.7.3 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.7.2 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.7.1 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.7.0 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.6.0 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.5.2 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.5.1 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.5.0 lib/wcc/blogs/metadata.rb
wcc-blogs-client-0.4.1 lib/wcc/blogs/metadata.rb