Sha256: 337cacf7afb70d902303e8d6f38f70497cc557bedce6dd0c0d4263e242f4b493

Contents?: true

Size: 1.04 KB

Versions: 7

Compression:

Stored size: 1.04 KB

Contents

# frozen_string_literal: true
module Geoblacklight
  class ItemViewer
    def initialize(references)
      @references = references
    end

    def viewer_protocol
      return 'map' if viewer_preference.nil?
      viewer_preference.keys.first.to_s
    end

    def viewer_endpoint
      return '' if viewer_preference.nil?
      viewer_preference.values.first.to_s
    end

    def wms
      @references.wms
    end

    def iiif
      @references.iiif
    end

    def tiled_map_layer
      @references.tiled_map_layer
    end

    def dynamic_map_layer
      @references.dynamic_map_layer
    end

    def feature_layer
      @references.feature_layer
    end

    def image_map_layer
      @references.image_map_layer
    end

    def index_map
      @references.index_map
    end

    def oembed
      @references.oembed
    end

    def tms
      @references.tms
    end

    def viewer_preference
      [oembed, index_map, tms, wms, iiif, tiled_map_layer, dynamic_map_layer,
       image_map_layer, feature_layer].compact.map(&:to_hash).first
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
geoblacklight-4.0.0.pre.alpha.3 lib/geoblacklight/item_viewer.rb
geoblacklight-4.0.0.pre.alpha.2 lib/geoblacklight/item_viewer.rb
geoblacklight-4.0.0.pre.alpha.1 lib/geoblacklight/item_viewer.rb
geoblacklight-4.0.0.pre.alpha lib/geoblacklight/item_viewer.rb
geoblacklight-3.4.0 lib/geoblacklight/item_viewer.rb
geoblacklight-3.3.1 lib/geoblacklight/item_viewer.rb
geoblacklight-3.3.0 lib/geoblacklight/item_viewer.rb