Class: RailsAdmin::ESModulePreprocessor
- Inherits:
-
Object
- Object
- RailsAdmin::ESModulePreprocessor
- Defined in:
- lib/rails_admin/support/esmodule_preprocessor.rb
Class Method Summary collapse
Instance Method Summary collapse
- #call(input) ⇒ Object
-
#initialize ⇒ ESModulePreprocessor
constructor
A new instance of ESModulePreprocessor.
Constructor Details
#initialize ⇒ ESModulePreprocessor
Returns a new instance of ESModulePreprocessor.
11 |
# File 'lib/rails_admin/support/esmodule_preprocessor.rb', line 11 def initialize; end |
Class Method Details
.call(input) ⇒ Object
7 8 9 |
# File 'lib/rails_admin/support/esmodule_preprocessor.rb', line 7 def self.call(input) instance.call(input) end |
.instance ⇒ Object
3 4 5 |
# File 'lib/rails_admin/support/esmodule_preprocessor.rb', line 3 def self.instance @instance ||= new end |
Instance Method Details
#call(input) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/rails_admin/support/esmodule_preprocessor.rb', line 13 def call(input) data = input[:data] if input[:filename].start_with? RailsAdmin::Engine.root.join('src').to_s data.gsub!(/^(import .+)$/) { "// #{Regexp.last_match(1)}" } data.gsub!(/^(export +default +{)$/) do case File.basename(input[:filename]) when 'i18n.js' "/* #{Regexp.last_match(1)} */ window.I18n = {" else raise "Unable to preprocess file: #{input[:filename]}" end end elsif input[:filename] =~ %r{turbo-rails.+/turbo\.js$} data.gsub!(/^(export .+)$/) { "// #{Regexp.last_match(1)}" } end {data: data} end |