Class: RailsApiKeysUi::Generators::InstallGenerator

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/rails_api_keys_ui/install/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#copy_initializerObject



12
13
14
# File 'lib/generators/rails_api_keys_ui/install/install_generator.rb', line 12

def copy_initializer
  template "initializer.rb.tt", "config/initializers/rails_api_keys_ui.rb"
end

#copy_stimulus_controllersObject



16
17
18
19
20
21
# File 'lib/generators/rails_api_keys_ui/install/install_generator.rb', line 16

def copy_stimulus_controllers
  return unless yes?("Copy example Stimulus modal/clipboard controllers into the host app?")

  copy_file "javascript/modal_controller.js", "app/javascript/controllers/modal_controller.js"
  copy_file "javascript/clipboard_controller.js", "app/javascript/controllers/clipboard_controller.js"
end

#show_readmeObject



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/generators/rails_api_keys_ui/install/install_generator.rb', line 23

def show_readme
  say <<~MSG

    rails_api_keys-ui installed.

    1. Draw routes, for example:

         resources :employees do
           rails_api_keys_ui owner: :current_user, controller: "api_keys"
         end

         rails_api_keys_ui owner: :company, path: "company/api_keys"

    2. Views expect Stimulus controllers registered as `modal` and `clipboard`
       (open/close + openOnConnect; copy from source target). Skip the copy
       step above if your app already has compatible controllers.

    3. The panel inlines a scoped stylesheet by default. Override brand colors
       with --rak-ui-primary-600 / --rak-ui-primary-700 on .rails-api-keys-ui,
       or set config.include_stylesheet = false if you style it yourself.

    4. Optional: rails generate rails_api_keys_ui:controllers
                 rails generate rails_api_keys_ui:views
                 rails generate rails_api_keys_ui:locales

  MSG
end