class Lookbook::PanelStore

def build_config(name, group_name, *args)

def build_config(name, group_name, *args)
  opts = if args.many? && args.last.is_a?(Hash)
    args.last.merge({partial: args.first})
  elsif args.any?
    args.first.is_a?(String) ? {partial: args.first} : args.first
  else
    {}
  end
  if opts[:partial].present?
    opts[:name] = name.to_sym
    opts[:group] = group_name.to_sym
    Store.new(DEFAULTS.merge(opts))
  else
    raise ConfigError.new("panels must define a partial path", scope: "panels.config")
  end
end