Sha256: d4384d1200baf069c01e89fc6788fc10cec104b797108710c9616d926670fc43

Contents?: true

Size: 744 Bytes

Versions: 3

Compression:

Stored size: 744 Bytes

Contents

require 'sinatra'

get '/views/:widget?.html' do
  protected!
  tilt_html_engines.each do |suffix, engines|
    widget_name = params[:widget]
    file_name   = "#{widget_name}.#{suffix}"
    file_overrides = File.join(settings.root, 'widgets', widget_name, file_name)
    return engines.first.new(file_overrides).render if File.exist? file_overrides

    contrib_file = File.join(__dir__, 'assets', 'widgets', widget_name, file_name)
    return engines.first.new(contrib_file).render if File.exist? contrib_file
  end
end

get '/api/states' do
  protected!
  content_type :json

  DashingContrib::Dashing.states.to_json
end

post '/api/history/save' do
  protected!
  content_type :json

  DashingContrib::History.save
  { message: 'done' }
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
dashing-contrib-0.1.3 lib/dashing-contrib/routes.rb
dashing-contrib-0.1.2 lib/dashing-contrib/routes.rb
dashing-contrib-0.1.1 lib/dashing-contrib/routes.rb