class ActionView::Storybook::Dsl::ControlsDsl

Constants

Controls

Attributes

controls[R]

Public Class Methods

new(story_config) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 9
def initialize(story_config)
  @story_config = story_config
  @controls = []
end

Public Instance Methods

array(param, value, separator = ",", name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 62
def array(param, value, separator = ",", name: nil)
  controls << Controls::ArrayConfig.new(param, value, separator, name: name)
end
boolean(param, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 18
def boolean(param, value, name: nil)
  controls << Controls::BooleanConfig.new(param, value, name: name)
end
check(param, options, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 54
def check(param, options, value, name: nil)
  controls << Controls::OptionsConfig.new(:check, param, options, value, name: name)
end
color(param, value, name: nil, preset_colors: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 30
def color(param, value, name: nil, preset_colors: nil)
  controls << Controls::ColorConfig.new(param, value, name: name, preset_colors: preset_colors)
end
date(param, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 66
def date(param, value, name: nil)
  controls << Controls::DateConfig.new(param, value, name: name)
end
inline_check(param, options, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 58
def inline_check(param, options, value, name: nil)
  controls << Controls::OptionsConfig.new(:'inline-check', param, options, value, name: name)
end
inline_radio(param, options, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 50
def inline_radio(param, options, value, name: nil)
  controls << Controls::OptionsConfig.new(:'inline-radio', param, options, value, name: name)
end
method_missing(method, *args) click to toggle source
Calls superclass method
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 74
def method_missing(method, *args)
  value = args.first
  control_method = case value
                   when Date
                     :date
                   when Array
                     :array
                   when Hash
                     :object
                   when Numeric
                     :number
                   when TrueClass, FalseClass
                     :boolean
                   when String
                     :text
                   end
  if control_method
    send(control_method, method, *args)
  else
    super
  end
end
multi_select(param, options, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 42
def multi_select(param, options, value, name: nil)
  controls << Controls::OptionsConfig.new(:'multi-select', param, options, value, name: name)
end
number(param, value, name: nil, min: nil, max: nil, step: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 22
def number(param, value, name: nil, min: nil, max: nil, step: nil)
  controls << Controls::NumberConfig.new(:number, param, value, name: name, min: min, max: max, step: step)
end
object(param, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 34
def object(param, value, name: nil)
  controls << Controls::ObjectConfig.new(param, value, name: name)
end
radio(param, options, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 46
def radio(param, options, value, name: nil)
  controls << Controls::OptionsConfig.new(:radio, param, options, value, name: name)
end
range(param, value, name: nil, min: nil, max: nil, step: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 26
def range(param, value, name: nil, min: nil, max: nil, step: nil)
  controls << Controls::NumberConfig.new(:range, param, value, name: name, min: min, max: max, step: step)
end
respond_to_missing?(_method, *) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 70
def respond_to_missing?(_method, *)
  true
end
select(param, options, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 38
def select(param, options, value, name: nil)
  controls << Controls::OptionsConfig.new(:select, param, options, value, name: name)
end
text(param, value, name: nil) click to toggle source
# File lib/action_view/storybook/dsl/controls_dsl.rb, line 14
def text(param, value, name: nil)
  controls << Controls::TextConfig.new(param, value, name: name)
end