spin_r 0.1.0 → 1.0.0

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: 7b01212f3cf3685572e747caee1b7f6cb658429f
4
- data.tar.gz: 31357fddb31515a48b1b2428a0bb5fdd3a1454c6
3
+ metadata.gz: 27c0a1f597760cdf3125d1d31e7e839d9d08527b
4
+ data.tar.gz: 231a3af7adab85e05143b7f2faeb46f3ce485355
5
5
  SHA512:
6
- metadata.gz: 296bca66f0b5b8361adca2e297db92a93b6b7a65294b7172820b6001a404b4d2a60da062916af45b6c642367af68830625a24ed8e8bce039b46881d223e62c0f
7
- data.tar.gz: f861f8e5af750a4a42ca5bced7018a8f3af4208a069cac3458ad50b18267e6317654eaeab939e4d376dc82e3bae79bd1cc0b7d40d1148111a2315837a4f69580
6
+ metadata.gz: 9a003aaf5ce0d4e07ec4288cee1880a066a9e6cc5048e10015138cf2c8ce57459c4e17e754014ba00a4fe2e5205e4a55753328c75917da4669f32d4e0b76bbaa
7
+ data.tar.gz: 8f9576355e1c4dd31a5ee0dc80f802edbdf407400d48238c39dc8affecdff5ec5073214bc4df9b13b4c5851bead384d97b2a12017f42945d1231a2c7fa998980
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ 2.4.2
data/Gemfile.lock CHANGED
@@ -1,7 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- spin_r (0.1.0)
4
+ spin_r (1.0.0)
5
+ colorize
5
6
 
6
7
  GEM
7
8
  remote: https://rubygems.org/
@@ -15,6 +16,7 @@ GEM
15
16
  virtus (~> 1.0)
16
17
  coercible (1.0.0)
17
18
  descendants_tracker (~> 0.0.1)
19
+ colorize (0.8.1)
18
20
  descendants_tracker (0.0.4)
19
21
  thread_safe (~> 0.3, >= 0.3.1)
20
22
  diff-lcs (1.3)
@@ -64,7 +66,6 @@ PLATFORMS
64
66
  ruby
65
67
 
66
68
  DEPENDENCIES
67
- bundler (~> 1.16.a)
68
69
  rake (~> 10.0)
69
70
  reek
70
71
  rspec (~> 3.0)
@@ -72,4 +73,4 @@ DEPENDENCIES
72
73
  spin_r!
73
74
 
74
75
  BUNDLED WITH
75
- 1.16.0.pre.2
76
+ 1.16.0.pre.3
data/demo.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'bundler/setup'
2
2
  require 'spin_r'
3
3
 
4
- def test_spinner(spinner, name)
4
+ def test_spinner(spinner, color, name)
5
5
  block = proc do
6
6
  sleep 1
7
7
  puts 'You spin my head right round! right round!'
@@ -13,17 +13,17 @@ def test_spinner(spinner, name)
13
13
 
14
14
  puts "SpinR::Spinners::#{name} Spinner"
15
15
  puts
16
- SpinR.spin(spinner, &block)
16
+ SpinR.spin(spinner, color, &block)
17
17
  puts
18
18
  puts
19
19
  end
20
20
 
21
- test_spinner SpinR::Spinners::TRADITIONAL, 'TRADITIONAL'
22
- test_spinner SpinR::Spinners::BLOCK, 'BLOCK'
23
- test_spinner SpinR::Spinners::DOTTED_1, 'DOTTED_1'
24
- test_spinner SpinR::Spinners::DOTTED_2, 'DOTTED_2'
25
- test_spinner SpinR::Spinners::DOTTED_3, 'DOTTED_3'
26
- test_spinner SpinR::Spinners::DOTTED_4, 'DOTTED_4'
27
- test_spinner SpinR::Spinners::WORLD, 'WORLD'
28
- test_spinner SpinR::Spinners::TRIANGLE, 'TRIANGLE'
29
- test_spinner SpinR::Spinners::EMOJI, 'EMOJI'
21
+ test_spinner SpinR::Spinners::TRADITIONAL, :black, 'TRADITIONAL'
22
+ test_spinner SpinR::Spinners::BLOCK, :red, 'BLOCK'
23
+ test_spinner SpinR::Spinners::DOTTED_1, :green, 'DOTTED_1'
24
+ test_spinner SpinR::Spinners::DOTTED_2, :yellow, 'DOTTED_2'
25
+ test_spinner SpinR::Spinners::DOTTED_3, :blue, 'DOTTED_3'
26
+ test_spinner SpinR::Spinners::DOTTED_4, :magenta, 'DOTTED_4'
27
+ test_spinner SpinR::Spinners::WORLD, :cyan, 'WORLD'
28
+ test_spinner SpinR::Spinners::TRIANGLE, :white, 'TRIANGLE'
29
+ test_spinner SpinR::Spinners::EMOJI, :default, 'EMOJI'
data/lib/spin_r.rb CHANGED
@@ -3,8 +3,8 @@ require 'spin_r/spinners'
3
3
  require 'spin_r/spinner'
4
4
 
5
5
  module SpinR
6
- def self.spin(spinner = nil, &block)
7
- runner = SpinR::Spinner.new(spinner)
6
+ def self.spin(spinner = nil, color = nil, &block)
7
+ runner = SpinR::Spinner.new(spinner, color)
8
8
  runner.worker(&block)
9
9
  end
10
10
  end
@@ -1,7 +1,13 @@
1
1
  module SpinR
2
2
  class Spinner
3
- def initialize(spinner = nil)
3
+ COLORS = %i[
4
+ black light_black red light_red green light_green yellow light_yellow blue light_blue magenta
5
+ light_magenta cyan light_cyan white light_white default
6
+ ].freeze
7
+
8
+ def initialize(spinner = nil, color = nil)
4
9
  @spinner = spinner || SpinR::Spinners::TRADITIONAL
10
+ @color = color
5
11
  end
6
12
 
7
13
  def worker(&block)
@@ -11,11 +17,14 @@ module SpinR
11
17
  private
12
18
 
13
19
  def with_spin
20
+ require 'colorize'
14
21
  chars = @spinner.clone.dup
15
22
  thread = Thread.new { yield }
16
23
 
17
24
  while thread.alive?
18
- print "#{chars[0]}\r"
25
+ spin_text = "#{chars[0]}\r".bold
26
+ spin_text = spin_text.send(@color.to_s) if COLORS.include? @color
27
+ print spin_text
19
28
  sleep 0.1
20
29
  print "\b"
21
30
  chars.push chars.shift
@@ -10,4 +10,4 @@ module SpinR
10
10
  TRIANGLE = %w[◢ ◣ ◤ ◥].freeze
11
11
  EMOJI = %w[🌑 🌒 🌓 🌔 🌕 🌝 🌖 🌗 🌘 🌚].freeze
12
12
  end
13
- end
13
+ end
@@ -1,3 +1,3 @@
1
1
  module SpinR
2
- VERSION = '0.1.0'.freeze
2
+ VERSION = '1.0.0'.freeze
3
3
  end
data/spin_r.gemspec CHANGED
@@ -26,7 +26,8 @@ Gem::Specification.new do |spec|
26
26
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
27
27
  spec.require_paths = ['lib']
28
28
 
29
- spec.add_development_dependency 'bundler', '~> 1.16.a'
29
+ spec.add_dependency 'colorize'
30
+
30
31
  spec.add_development_dependency 'rake', '~> 10.0'
31
32
  spec.add_development_dependency 'reek'
32
33
  spec.add_development_dependency 'rspec', '~> 3.0'
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spin_r
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - indrajit
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-10-06 00:00:00.000000000 Z
11
+ date: 2017-10-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
14
+ name: colorize
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 1.16.a
20
- type: :development
19
+ version: '0'
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 1.16.a
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -90,6 +90,7 @@ files:
90
90
  - ".gitignore"
91
91
  - ".rspec"
92
92
  - ".rubocop.yml"
93
+ - ".ruby-version"
93
94
  - ".travis.yml"
94
95
  - CODE_OF_CONDUCT.md
95
96
  - CONTRIBUTORS.md
@@ -127,7 +128,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
127
128
  version: '0'
128
129
  requirements: []
129
130
  rubyforge_project:
130
- rubygems_version: 2.6.11
131
+ rubygems_version: 2.6.13
131
132
  signing_key:
132
133
  specification_version: 4
133
134
  summary: Shell Spinner.