Class: Docbook::Mirror::Handlers::Equation

Inherits:
Object
  • Object
show all
Defined in:
lib/docbook/mirror/handlers/equation.rb

Class Method Summary collapse

Class Method Details

.call(element, context:) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/docbook/mirror/handlers/equation.rb', line 7

def self.call(element, context:)
  attrs = {
    xml_id: element.xml_id,
    title: context.resolve_title(element),
  }.compact
  content = context.extract_content(element)
  return nil if content.empty? && !element.xml_id

  # Extract image from mediaobject if present
  if content.empty? && element.mediaobject.any?
    img = Handlers::Media.figure(element, context: context)
    content << img if img
  end

  Node::Equation.new(attrs: attrs, content: content)
end