Class: Jekyll::Tailwind::Installer

Inherits:
Object
  • Object
show all
Defined in:
lib/jekyll-tailwind-cli/installer.rb

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ Installer

Returns a new instance of Installer.



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/jekyll-tailwind-cli/installer.rb', line 9

def initialize(options)
  @target =
    case RUBY_PLATFORM
    when /^arm64-darwin/
      'macos-arm64'
    when /^x86_64-darwin/
      'macos-x64'
    when 'x86_64-linux'
      'linux-x64'
    else
      raise "Tailwind CLI is not available for platform: #{RUBY_PLATFORM}"
    end

  @version = options[:version] || '3.4.1'
  @config_path = options[:config_path] || 'tailwind.config.js'
  @path = "_tailwind/tailwind-#{@target}-#{@version}"
end

Instance Method Details

#buildObject



31
32
33
34
35
# File 'lib/jekyll-tailwind-cli/installer.rb', line 31

def build
  Jekyll.logger.info 'Tailwind:', 'Rebuilt _site/assets/css/app.css'
  Jekyll.logger.info 'Tailwind command: #{@path} --input assets/css/app.css --output _site/assets/css/app.css --config #{@config_path}',
  `#{@path} --input assets/css/app.css --output _site/assets/css/app.css --config #{@config_path}`
end

#check_installObject



27
28
29
# File 'lib/jekyll-tailwind-cli/installer.rb', line 27

def check_install
  install unless File.exist?(@path)
end