# frozen_string_literal: true

require 'bundler/setup'

<% unless options -%> require 'erubi' <% end -%> require 'rack/csrf' require 'sinatra/base' <% if options -%> require 'sinatra/json' <% else -%> require 'sinatra/flash' <% end -%>

Dir.glob(File.join('helpers', '**', '*.rb')).each do |helper|

require_relative helper

end

module <%= camel_name %>

# Sinatra web application
#
class App < Sinatra::Base
  configure do
    set :root, File.dirname(__FILE__)

<% unless options -%>

set :erb, { escape_html: true }

<% end -%>

enable :logging

use Rack::Session::Cookie, secret: 'TODO: CHANGE ME'
use Rack::Csrf, raise: true

<% unless options -%>

register Sinatra::Flash

<% end -%>

end

configure :development do
  require 'better_errors'
  use BetterErrors::Middleware
  BetterErrors.application_root = __dir__
end

<% if options -%>

get '/' do
  json message: 'Smoke test successful!'
end

<% else -%>

get '/' do
  erb :index
end

<% end -%>

end

end