Sha256: 4228f29a5da10236d2ef5813cb0ffd216a4d130c974cc9b533eb48c110f0f135

Contents?: true

Size: 950 Bytes

Versions: 2

Compression:

Stored size: 950 Bytes

Contents

# frozen_string_literal: false

# Core SVG data for the trident specification sheet.
#
# This class should never need to be called directly.
# @private
class USPSFlags::Core::TridentSpecs::Base
  SA = USPSFlags::Helpers::SpecArrows
  BF = USPSFlags::Config::BASE_FLY
  BH = USPSFlags::Config::BASE_HOIST

  def initialize(options = {})
    @config = options[:config]
    @box_top = options[:bt]
    @box_bottom = options[:bb]
    @box_left = options[:bl]
    @box_right = options[:br]
    @fly = options[:fly]
    @unit = options[:unit]
    @heading = options[:heading]
  end

private

  def output(name, x_offset, key)
    body = block_given? ? yield : (boundary_box + right + left)

    <<~SVG
      <!-- #{name} Trident -->
      <g transform="translate(#{BF * x_offset / 80},#{BH * 9 / 32})"><g transform="scale(0.7)">
        #{@heading}

        #{USPSFlags::Core::Icons::Trident.new(key).svg}

        #{body}
      </g></g>
    SVG
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
usps_flags-0.5.0 lib/usps_flags/core/trident_specs/base.rb
usps_flags-0.4.1 lib/usps_flags/core/trident_specs/base.rb