Sha256: 97a07bf246c65609f64b6f1a93a575493c4ce9010b9aeb2c3afb95afc966a3c1

Contents?: true

Size: 1.46 KB

Versions: 12

Compression:

Stored size: 1.46 KB

Contents

TAILWIND_COMPILE_COMMAND = "#{RbConfig.ruby} #{Pathname.new(__dir__).to_s}/../../exe/tailwindcss -i '#{Rails.root.join("app/assets/stylesheets/application.tailwind.css")}' -o '#{Rails.root.join("app/assets/builds/tailwind.css")}' -c '#{Rails.root.join("config/tailwind.config.js")}' --minify"

namespace :tailwindcss do
  desc "Install tailwind plugins"
  task :install_plugins do
    plugins = YAML.load_file(Rails.root.join("config", "tailwind.plugins.yml"))

    next unless plugins

    plugins.each do |name, url|
      dir = Rails.root.join("tmp", "tailwindcss-plugin").to_s

      next if File.exists?(File.join(dir, "#{name}.css"))
      FileUtils.mkdir_p(dir)

      URI.open(url) do |remote|
        File.open(File.join(dir, "#{name}.css"), "wb") do |local|
          local.write(remote.read)
        end
      end
    end
  end

  desc "Build your Tailwind CSS"
  task :build do
    exec TAILWIND_COMPILE_COMMAND
  end

  desc "Watch and build your Tailwind CSS on file changes"
  task :watch do
    exec "#{TAILWIND_COMPILE_COMMAND} -w"
  end
end

Rake::Task["tailwindcss:watch"].enhance(["tailwindcss:install_plugins"])
Rake::Task["tailwindcss:build"].enhance(["tailwindcss:install_plugins"])

Rake::Task["assets:precompile"].enhance(["tailwindcss:build"])

if Rake::Task.task_defined?("test:prepare")
  Rake::Task["test:prepare"].enhance(["tailwindcss:build"])
elsif Rake::Task.task_defined?("db:test:prepare")
  Rake::Task["db:test:prepare"].enhance(["tailwindcss:build"])
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
tailwindcss-rails-plugable-2.0.12.pre.dev-x86_64-darwin lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.12.pre.dev-x64-mingw-ucrt lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.12.pre.dev-x64-mingw32 lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.12.pre.dev lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.12.pre.dev-arm64-darwin lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.12.pre.dev-aarch64-linux lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.12.pre.dev-x86_64-linux lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.11.pre.dev-x86_64-linux lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.11.pre.dev-x86_64-darwin lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.11.pre.dev-x64-mingw-ucrt lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.11.pre.dev-x64-mingw32 lib/tasks/build.rake
tailwindcss-rails-plugable-2.0.11.pre.dev-aarch64-linux lib/tasks/build.rake