Sha256: a454f2ddab9f4ed25bd209acc1c1c151fd94b0e1e496d69050aeb2f7dbe49b50

Contents?: true

Size: 656 Bytes

Versions: 1

Compression:

Stored size: 656 Bytes

Contents

module Roadie
  # @api private
  # Stores orphan style properties as they are being merged into specific
  # element's "style" attribute.
  class StyleProperties
    attr_reader :properties

    def initialize(properties)
      @properties = properties
    end

    def merge(new_properties)
      StyleProperties.new(properties + properties_of(new_properties))
    end

    def merge!(new_properties)
      @properties += properties_of(new_properties)
    end

    def to_s
      @properties.sort.map(&:to_s).join(";")
    end

    private
    def properties_of(object)
      object.respond_to?(:properties) ? object.properties : object
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
roadie-3.0.0.pre1 lib/roadie/style_properties.rb