Skip to content

Commit fbdb22b

Browse files
authored
CSS processors other than Tailwind require a node-based JavaScript environment (rails#43600)
So overwrite the normal JS default if one such processor has been specified.
1 parent 016f6c8 commit fbdb22b

File tree

1 file changed

+13
-3
lines changed

1 file changed

+13
-3
lines changed

railties/lib/rails/generators/app_base.rb

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ def jbuilder_gemfile_entry
313313
def javascript_gemfile_entry
314314
return [] if options[:skip_javascript]
315315

316-
if options[:javascript] == "importmap"
316+
if adjusted_javascript_option == "importmap"
317317
GemfileEntry.version("importmap-rails", ">= 0.3.4", "Use JavaScript with ESM import maps [https://github.com/rails/importmap-rails]")
318318
else
319319
GemfileEntry.version "jsbundling-rails", "~> 0.1.0", "Bundle and transpile JavaScript [https://github.com/rails/jsbundling-rails]"
@@ -336,6 +336,16 @@ def using_node?
336336
options[:javascript] && options[:javascript] != "importmap"
337337
end
338338

339+
# CSS processors other than Tailwind require a node-based JavaScript environment. So overwrite the normal JS default
340+
# if one such processor has been specified.
341+
def adjusted_javascript_option
342+
if options[:css] && options[:css] != "tailwind" && options[:javascript] == "importmap"
343+
"esbuild"
344+
else
345+
options[:javascript]
346+
end
347+
end
348+
339349
def css_gemfile_entry
340350
return [] unless options[:css]
341351

@@ -407,9 +417,9 @@ def run_bundle
407417
def run_javascript
408418
return if options[:skip_javascript] || !bundle_install?
409419

410-
case options[:javascript]
420+
case adjusted_javascript_option
411421
when "importmap" then rails_command "importmap:install"
412-
when "webpack", "esbuild", "rollup" then rails_command "javascript:install:#{options[:javascript]}"
422+
when "webpack", "esbuild", "rollup" then rails_command "javascript:install:#{adjusted_javascript_option}"
413423
end
414424
end
415425

0 commit comments

Comments
 (0)