class RichcssCLI::Cli
Public Instance Methods
init(extension="css")
click to toggle source
elements |— … box |— … parts |— …
# File lib/richcss/cli.rb, line 57 def init(extension="css") if (extension.eql?("css") || extension.eql?("scss")) Richcss::Generators::Template.start([extension]) else puts "Only support css or scss extension, default is css" end end
install(part_name, part_version='')
click to toggle source
# File lib/richcss/cli.rb, line 66 def install(part_name, part_version='') installed_parts = Richcss::Part.get_or_create_partfile() if part_version.eql?('') RestClient.get("http://www.cssparts.com/api/part/#{part_name}") { |response, request, result, &block| if response.code == 200 body = JSON.parse(response.to_str) part_version = body["version"] elsif response.code == 400 puts "Part: #{part_name} cannot be found." return else puts "Error #{response.code} retrieving Part: #{part_name}" return end } else RestClient.get("http://www.cssparts.com/api/part/#{part_name}", {:params => {'version' => part_version}}) { |response, request, result, &block| if response.code == 400 puts "Part: #{part_name} #{part_version} does not exist." return elsif response.code != 200 puts "Error #{response.code} retrieving Part: #{part_name} #{part_version}" return end } end if installed_parts.key?(part_name) and installed_parts[part_name].eql?(part_version) puts "Part #{part_name} v#{part_version} is already installed!" return end partfileList = '' dep_list = Richcss::Part.resolve_dependencies(part_name, part_version, installed_parts) if dep_list == nil puts "Failed to install #{part_name} #{part_version}" return end dep_list.each do |dep_name, dep_version| Richcss::Part.fetch(dep_name, dep_version) partfileList << dep_name << " " << dep_version.to_s << "\n" end File.open('parts/Partfile', 'wb') do |f| f.write(partfileList) end end