Class: RailsAppGenerator::AddOns::StimulusComponents

Inherits:
RailsAppGenerator::Addon show all
Defined in:
lib/rails_app_generator/addons/stimulus_components.rb

Overview

Stimulus components

Instance Attribute Summary

Attributes inherited from RailsAppGenerator::Addon

#context, #dependencies, #gem_entries

Instance Method Summary collapse

Methods inherited from RailsAppGenerator::Addon

addon_name, dependencies, depends_on, gem, gem_entries, #initialize, required_gem, reset_gem_entries

Constructor Details

This class inherits a constructor from RailsAppGenerator::Addon

Instance Method Details

#applyObject



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/rails_app_generator/addons/stimulus_components.rb', line 10

def apply
  run('yarn add tailwindcss-stimulus-components')
  inject_into_file('app/javascript/packs/application.js') do
    "      import { Application } from \"stimulus\"\n      import { definitionsFromContext } from \"stimulus/webpack-helpers\"\n\n      const application = Application.start();\n      const context = require.context(\"controllers\", true, /.js$/);\n      application.load(definitionsFromContext(context));\n\n      import { Dropdown, Modal, Tabs, Popover, Toggle, Slideover } from \"tailwindcss-stimulus-components\"\n      application.register('dropdown', Dropdown)\n      application.register('modal', Modal)\n      application.register('tabs', Tabs)\n      application.register('popover', Popover)\n      application.register('toggle', Toggle)\n      application.register('slideover', Slideover)\n    JS\n  end\nend\n"