Class: Asciidoctor::Chart::DocinfoProcessor

Inherits:
Extensions::DocinfoProcessor
  • Object
show all
Defined in:
lib/asciidoctor/chart/docinfo_processor.rb

Constant Summary collapse

C3JS_DIR_ATTR =

at_location :head

'c3jsdir'
C3JS_DEFAULT_PATH =
'https://cdnjs.cloudflare.com/ajax/libs/c3/0.7.20/'
CHARTJS_DIR_ATTR =
'chartjsdir'
CHARTJS_DEFAULT_PATH =
'https://cdnjs.cloudflare.com/ajax/libs/Chart.js/3.7.0/'
CHARTIST_DIR_ATTR =
'chartistdir'
CHARTIST_DEFAULT_PATH =
'https://cdn.jsdelivr.net/npm/[email protected]/dist/'
D3JS_DIR_ATTR =
'd3jsdir'
D3JS_DEFAULT_PATH =
'https://cdnjs.cloudflare.com/ajax/libs/d3/5.16.0/'
DEFAULT_STYLE =
<<~HTML.chomp
  <style>
    .chartblock {
      margin-bottom: 1.25em;
    }
    .chartblock > .title {
      text-rendering: optimizeLegibility;
      text-align: left;
      font-size: 1rem;
      font-style: italic;
      line-height: 1.45;
      color: #7a2518;
      font-weight: 400;
    }
    .chartblock > .chartjs-content {
      position: relative;
      margin-bottom: 0.25em;
    }
  </style>
HTML

Instance Method Summary collapse

Instance Method Details

#process(doc) ⇒ Object



42
43
44
45
# File 'lib/asciidoctor/chart/docinfo_processor.rb', line 42

def process(doc)
  engines = doc.x_chart[:engines]
  (engines.map {|engine| send(engine, doc) }.to_a + [DEFAULT_STYLE]).join "\n"
end