spectra 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6196e19e6dd376e660f847d8c8182d7043e43a7a
4
- data.tar.gz: 1f239074435518c4d00af6e69dda7848a32ae311
3
+ metadata.gz: a72b5bc2f151b552d46a573dddbb482420ca601a
4
+ data.tar.gz: 657a78b5d037b17114d693826cc2d755c2678dff
5
5
  SHA512:
6
- metadata.gz: 1d52e986caab621c77e2696a4fe2fb8575a777138c0e74526856319f5677cf920f4c4058e34901189767fbe5f10a81254dc3a1483ab6257553b3eacd50591d2f
7
- data.tar.gz: 231e70574e51600740350005396ee877a6df38f62aaebed06004832832af9f9749131c1869de1fa7bea59d097942b07b4f605681bd754732dca4b769b9a17350
6
+ metadata.gz: b6d7832fe91453953e6f956716739af6f2fa70205a3221c27acb16e9526ea8e16cd8936896c1f8e2a3bda090bd533438a78c636c1cd636724be51a6980708d64
7
+ data.tar.gz: 27ab3a675820a9c4f8b0174fb88b463938494d14e8e860f320141d41638fd261b2042c5c06e18048ce940ba44109e8513ac23db725a94799dd1d3542a8462ddd
@@ -12,6 +12,11 @@ class Command < CLAide::Command
12
12
  self.command = 'spectra'
13
13
  self.summary = 'Serializes colors into a variety of filetypes using a convenient ruby DSL'
14
14
 
15
+ def initialize(argv)
16
+ Spectra.logger.parse_argv(argv)
17
+ super
18
+ end
19
+
15
20
  ##
16
21
  ## Subcommands
17
22
  ##
@@ -87,7 +92,7 @@ class Command < CLAide::Command
87
92
  message += "\n#{exception}"
88
93
  raise Informative, message
89
94
  else
90
- Spectra.logger.debug "[✓] Created #{self.destination}"
95
+ Spectra.logger.info "[✓] Created #{self.destination}"
91
96
  end
92
97
  end
93
98
 
@@ -25,7 +25,10 @@ module Spectra
25
25
  ##
26
26
 
27
27
  def to_s
28
- "<color: #{name} colors: #{components.values_at(:red, :green, :blue, :alpha).map{|v| '%.2f' % (v || 0.0) }}>"
28
+ string = "color '#{name}'"
29
+ string = [ :red, :green, :blue, :alpha ].inject(string) do |memo, key|
30
+ memo + ' ' + key.to_s[0] + ' %.2f' % (self.components[key] || 0.0)
31
+ end
29
32
  end
30
33
 
31
34
  end
@@ -12,6 +12,9 @@ class Spectrum
12
12
  def generate(definition)
13
13
  # evaluate color definition file, setup defaults
14
14
  self.instance_eval(definition)
15
+ self.log_report()
16
+
17
+ # pull in default formats if we don't have any
15
18
  self.formats(:palette, :objc) unless self.views
16
19
 
17
20
  # render views according to the specification
@@ -53,6 +56,18 @@ class Spectrum
53
56
  def white(*components)
54
57
  components.hash_from(:white, :alpha)
55
58
  end
59
+
60
+ ##
61
+ ## Debug
62
+ ##
63
+
64
+ def log_report
65
+ color_info = self.colors.inject("") do |memo, color|
66
+ memo += "[∫] Evaluated #{color}\n"
67
+ end
68
+
69
+ Spectra.logger.debug(color_info)
70
+ end
56
71
 
57
72
  end
58
73
 
@@ -27,9 +27,15 @@ module Spectra
27
27
  attr_accessor :logger
28
28
  end
29
29
 
30
+ class Logger < Logger
31
+ def parse_argv(argv)
32
+ self.level = argv.flag?('verbose', false) ? Logger::DEBUG : Logger::INFO
33
+ end
34
+ end
35
+
30
36
  def self.logger
31
37
  unless @logger
32
- @logger = Logger.new(STDOUT)
38
+ @logger = Spectra::Logger.new(STDOUT)
33
39
  @logger.formatter = proc { |sev, date, prog, msg| msg + "\n" }
34
40
  end
35
41
 
@@ -1,3 +1,3 @@
1
1
  module Spectra
2
- VERSION = '0.1.3'
2
+ VERSION = '0.1.4'
3
3
  end
@@ -9,12 +9,12 @@
9
9
  + (UIColor *){{name}}{{#is_header}};{{/is_header}}
10
10
  {{^is_header}}
11
11
  {
12
- {{#white}}
12
+ {{#grayscale?}}
13
13
  return [UIColor colorWithWhite:{{white}} alpha:{{alpha}}];
14
- {{/white}}
15
- {{^white}}
14
+ {{/grayscale?}}
15
+ {{^grayscale?}}
16
16
  return [UIColor colorWithRed:{{red}} green:{{green}} blue:{{blue}} alpha:{{alpha}}];
17
- {{/white}}
17
+ {{/grayscale?}}
18
18
  }
19
19
 
20
20
  {{/is_header}}
@@ -23,7 +23,7 @@ module Serializable
23
23
  def write_file(file, text, path)
24
24
  Spectra.logger.info "[✓] Generating #{path}"
25
25
  if Config.dry_run
26
- Spectra.logger.info "\n#{text}"
26
+ Spectra.logger.info "\n#{text.chomp}"
27
27
  else
28
28
  file.write(text)
29
29
  end
@@ -9,12 +9,12 @@ extension UIColor {
9
9
 
10
10
  {{#colors}}
11
11
  class func {{name}}() -> UIColor {
12
- {{#white}}
12
+ {{#grayscale?}}
13
13
  return UIColor(white: {{white}}, alpha: {{alpha}})
14
- {{/white}}
15
- {{^white}}
14
+ {{/grayscale?}}
15
+ {{^grayscale?}}
16
16
  return UIColor(red: {{red}}, green: {{green}}, blue: {{blue}}, alpha: {{alpha}})
17
- {{/white}}
17
+ {{/grayscale?}}
18
18
  }
19
19
 
20
20
  {{/colors}}}
@@ -71,7 +71,7 @@ module Spectra
71
71
 
72
72
  attr_accessor :color, :formatters
73
73
 
74
- def initialize(color, formatters)
74
+ def initialize(color, formatters)
75
75
  self.color = color
76
76
  self.formatters = formatters
77
77
  end
@@ -96,6 +96,10 @@ module Spectra
96
96
  self.format(:name, self.color.name)
97
97
  end
98
98
 
99
+ def grayscale?
100
+ self.color.components[:white]
101
+ end
102
+
99
103
  def hex
100
104
  self.format(:value, Components.hexify(self.color.components))
101
105
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spectra
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ty Cobb
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-21 00:00:00.000000000 Z
11
+ date: 2015-01-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler