require 'find'
require 'json'
require 'pathname'
namespace :bower do
find_files = ->(path) {
Find.find(Pathname.new(path).relative_path_from(Pathname.new Dir.pwd).to_s).map do |path|
path if File.file?(path)
end.compact
}
desc 'update main and version in bower.json'
task :generate do
require 'bootstrap-sass'
Dir.chdir Bootstrap.gem_path do
spec = JSON.parse(File.read 'bower.json')
spec['main'] =
find_files.(File.join(Bootstrap.stylesheets_path, '_bootstrap.scss')) +
find_files.(Bootstrap.fonts_path) +
%w(assets/javascripts/bootstrap.js)
spec['version'] = Bootstrap::VERSION
File.open('bower.json', 'w') do |f|
f.puts JSON.pretty_generate(spec)
end
end
end
end