From f44a6dbfbe6ae288cbcb82f1d3868cf571870c76 Mon Sep 17 00:00:00 2001 From: Gord Pearson Date: Thu, 20 Apr 2023 16:18:17 -0400 Subject: [PATCH] Handle `tailwindcss:watch[always]` --- lib/tailwindcss/commands.rb | 3 ++- lib/tasks/build.rake | 3 ++- test/lib/tailwindcss/commands_test.rb | 7 +++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/tailwindcss/commands.rb b/lib/tailwindcss/commands.rb index 448e08f..0020a97 100644 --- a/lib/tailwindcss/commands.rb +++ b/lib/tailwindcss/commands.rb @@ -83,9 +83,10 @@ def compile_command(debug: false, **kwargs) end end - def watch_command(poll: false, **kwargs) + def watch_command(always: false, poll: false, **kwargs) compile_command(**kwargs).tap do |command| command << "-w" + command << "always" if always command << "-p" if poll end end diff --git a/lib/tasks/build.rake b/lib/tasks/build.rake index 2765381..1340769 100644 --- a/lib/tasks/build.rake +++ b/lib/tasks/build.rake @@ -11,7 +11,8 @@ namespace :tailwindcss do task watch: :environment do |_, args| debug = args.extras.include?("debug") poll = args.extras.include?("poll") - command = Tailwindcss::Commands.watch_command(debug: debug, poll: poll) + always = args.extras.include?("always") + command = Tailwindcss::Commands.watch_command(always: always, debug: debug, poll: poll) puts command.inspect if args.extras.include?("verbose") system(*command) end diff --git a/test/lib/tailwindcss/commands_test.rb b/test/lib/tailwindcss/commands_test.rb index 6ddc6a2..142efcf 100644 --- a/test/lib/tailwindcss/commands_test.rb +++ b/test/lib/tailwindcss/commands_test.rb @@ -165,8 +165,15 @@ def mock_local_tailwindcss_install assert_kind_of(Array, actual) assert_equal(executable, actual.first) assert_includes(actual, "-w") + refute_includes(actual, "always") assert_includes(actual, "-p") assert_includes(actual, "--minify") + + actual = Tailwindcss::Commands.watch_command(exe_path: dir, always: true) + assert_kind_of(Array, actual) + assert_equal(executable, actual.first) + assert_includes(actual, "-w") + assert_includes(actual, "always") end end end