class Rails::PluginBuilder

def app

def app
  if mountable?
    if api?
      directory "app", exclude_pattern: %r{app/(views|helpers)}
    else
      directory "app"
      empty_directory_with_keep_file "app/assets/images/#{namespaced_name}"
    end
    empty_directory_with_keep_file "app/models/concerns"
    empty_directory_with_keep_file "app/controllers/concerns"
    remove_dir "app/mailers" if skip_action_mailer?
    remove_dir "app/jobs" if options[:skip_active_job]
  elsif full?
    empty_directory_with_keep_file "app/models"
    empty_directory_with_keep_file "app/controllers"
    empty_directory_with_keep_file "app/models/concerns"
    empty_directory_with_keep_file "app/controllers/concerns"
    empty_directory_with_keep_file "app/mailers" unless skip_action_mailer?
    empty_directory_with_keep_file "app/jobs" unless options[:skip_active_job]
    unless api?
      empty_directory_with_keep_file "app/assets/images/#{namespaced_name}"
      empty_directory_with_keep_file "app/helpers"
      empty_directory_with_keep_file "app/views"
    end
  end
end