class ApexCharts::Charts::BaseChart

Attributes

options[R]
sample[R]
series[R]

Public Class Methods

new(data, options={}) click to toggle source
# File lib/apex_charts/charts/base_chart.rb, line 9
def initialize(data, options={})
  @series = build_series(data)
  @options = build_options(options)
end

Public Instance Methods

chart_type() click to toggle source
# File lib/apex_charts/charts/base_chart.rb, line 18
def chart_type; end
render() click to toggle source
# File lib/apex_charts/charts/base_chart.rb, line 14
def render
  ApexCharts::Renderer.render(options)
end

Protected Instance Methods

build_options(options) click to toggle source
# File lib/apex_charts/charts/base_chart.rb, line 28
def build_options(options)
  deep_merge(
    ApexCharts::OptionsBuilder.new(sample, options).build_options,
    camelize_keys(
      {**@series, chart: {type: chart_type}}.compact
    )
  )
end
build_series(data) click to toggle source
# File lib/apex_charts/charts/base_chart.rb, line 22
def build_series(data)
  series_object = series_type.new(data)
  @sample = series_object.sample
  series_object.sanitized
end