Module: Tramway::Api

Defined in:
lib/tramway/api.rb,
lib/tramway/api/engine.rb,
lib/tramway/api/version.rb,
app/jobs/tramway/api/application_job.rb,
app/models/tramway/api/application_record.rb,
app/helpers/tramway/api/application_helper.rb,
app/mailers/tramway/api/application_mailer.rb,
app/controllers/tramway/api/application_controller.rb,
app/controllers/tramway/api/v1/application_controller.rb

Defined Under Namespace

Modules: ApplicationHelper, V1 Classes: ApplicationController, ApplicationJob, ApplicationMailer, ApplicationRecord, AuthenticationForm, Engine

Constant Summary collapse

VERSION =
'1.4'

Class Method Summary collapse

Class Method Details

.auth_attributes ⇒ Object



18
19
20
# File 'lib/tramway/api.rb', line 18

def auth_attributes
  @@auth_config[:auth_attributes]
end

.auth_config ⇒ Object



6
7
8
# File 'lib/tramway/api.rb', line 6

def auth_config
  @@auth_config ||= { user_model: ::Tramway::User::User, auth_attributes: :email }
end

.auth_config=(**params) ⇒ Object



10
11
12
# File 'lib/tramway/api.rb', line 10

def auth_config=(**params)
  @@auth_config = params
end

.available_models ⇒ Object



30
31
32
# File 'lib/tramway/api.rb', line 30

def available_models
  @@available_models ||= {}
end

.set_available_models(**models) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/tramway/api.rb', line 22

def set_available_models(**models)
  @@available_models ||= {}
  models = models.reduce({}) do |hash, pair|
    hash.merge! pair[0].to_s.camelize => pair[1]
  end
  @@available_models.merge! models
end

.user_based_model ⇒ Object



14
15
16
# File 'lib/tramway/api.rb', line 14

def user_based_model
  @@auth_config[:user_model]
end