Class: MicroMicro::Parsers::ImageElementParser

Inherits:
Object
  • Object
show all
Defined in:
lib/micro_micro/parsers/image_element_parser.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(node, value) ⇒ ImageElementParser

Returns a new instance of ImageElementParser.

Parameters:

  • node (Nokogiri::XML::Element)
  • value (String)
[View source]

11
12
13
14
# File 'lib/micro_micro/parsers/image_element_parser.rb', line 11

def initialize(node, value)
  @node = node
  @value = value
end

Instance Attribute Details

#valueString (readonly)

Returns:

  • (String)

7
8
9
# File 'lib/micro_micro/parsers/image_element_parser.rb', line 7

def value
  @value
end

Instance Method Details

#altString?

Returns:

  • (String, nil)
[View source]

17
18
19
# File 'lib/micro_micro/parsers/image_element_parser.rb', line 17

def alt
  @alt ||= node["alt"]&.strip
end

#alt?Boolean

Returns:

  • (Boolean)
[View source]

22
23
24
# File 'lib/micro_micro/parsers/image_element_parser.rb', line 22

def alt?
  !alt.nil?
end

#srcsetHash{Symbol => String}?

Returns:

  • (Hash{Symbol => String}, nil)
[View source]

27
28
29
# File 'lib/micro_micro/parsers/image_element_parser.rb', line 27

def srcset
  @srcset ||= image_candidates if node["srcset"]
end

#srcset?Boolean

Returns:

  • (Boolean)
[View source]

32
33
34
# File 'lib/micro_micro/parsers/image_element_parser.rb', line 32

def srcset?
  srcset.present?
end

#to_hHash{Symbol => String, Hash{Symbol => String}}

Returns:

  • (Hash{Symbol => String, Hash{Symbol => String}})
[View source]

37
38
39
40
41
42
43
44
# File 'lib/micro_micro/parsers/image_element_parser.rb', line 37

def to_h
  hash = { value: value }

  hash[:srcset] = srcset if srcset?
  hash[:alt] = alt if alt?

  hash
end