module Jekyll::Esm::Managers::Bower

Public Class Methods

add(package:, site:) click to toggle source
# File lib/jekyll-esm/managers/bower.rb, line 18
def self.add(package:, site:)
  stdout, stderr, status = Open3.capture3(
    "bower install #{package}",
    chdir: File.expand_path(site.source)
  )

  if site.config.dig('esm', 'strict')
    runtime_error = stdout =~ /ERROR in|SyntaxError/

    raise Error, stderr if stderr.size > 0
    raise Error, stdout if !runtime_error.nil?
  end
end
dist(config) click to toggle source
# File lib/jekyll-esm/managers/bower.rb, line 14
def self.dist(config)
  config.dig('esm', 'dist') || location(config) || 'bower_components'
end
location(config) click to toggle source
# File lib/jekyll-esm/managers/bower.rb, line 10
def self.location(config)
  config.dig('esm', 'bower', 'dir') || 'bower_components'
end
remove(packages:, site:) click to toggle source
# File lib/jekyll-esm/managers/bower.rb, line 32
def self.remove(packages:, site:)
  stdout, stderr, status = Open3.capture3(
    "bower uninstall #{packages}",
    chdir: File.expand_path(site.source)
  )

  if site.config.dig('esm', 'strict')
    runtime_error = stdout =~ /ERROR in|SyntaxError/

    raise Error, stderr if stderr.size > 0
    raise Error, stdout if !runtime_error.nil?
  end
end