ansi-select 0.2.3 → 0.2.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: 58781cb6a3547007b0393b85fd16529ecdf27bc2
4
- data.tar.gz: 4a02d0117df598572ef704527283102f6396b40f
3
+ metadata.gz: 57447ede8f4f47c5c3d688e5bba3955d526c42be
4
+ data.tar.gz: 233e93ab7cc78065f77bbeffd8e37f33036cb87b
5
5
  SHA512:
6
- metadata.gz: 0b8655e2789ad87ae8dee69497abe8ef5da20f9dc86df88964c49a7623a5b643e3dc71cab22232c53292bde4201a348fddbb735de1e13300668d616350208c8e
7
- data.tar.gz: 17a68928b7f109864bf39e9caa7c492fc8007a37410fe499d375d065d41da92b1632d66d2b8b3cf7bef5a294bd153ef4b997f8a84b5065874cd71c56705db98e
6
+ metadata.gz: 037cf9989e8c19b142355f9951fd6c5bc0679ce4677adc588f0dca34cad3ddc480158d035ea0398574e2df98b875f849ad2e44f2567c7abd2c439b65735a4a86
7
+ data.tar.gz: 2c0a5b1562c9f7164bc19b486c3f187a54cc8a7605fff55ceb9ee9df8cb64dd6d3461defb902442954caacda5b70c4f5b625c7abe78d5cdba3fb08bdcde225ff
data/CHANGELOG.md CHANGED
@@ -1,4 +1,4 @@
1
- ### 0.2.3
1
+ ### 0.2.4
2
2
 
3
3
  * Ability to pass a custom formatter.
4
4
 
data/README.md CHANGED
@@ -34,8 +34,12 @@ print "Here's your #{beverage}. "
34
34
  print "We've also added #{additions.join(', ')}." if additions.present?
35
35
  ```
36
36
 
37
- The Ruby interface has an additional benefit of accepting any objects that respond
38
- to `#to_s` and returning one of them instead of a string.
37
+ The Ruby interface has an additional benefit of accepting and returning any objects instead of strings.
38
+ Also, if you'd like a custom formatter for them, you can pass it as a second option (the default one calls `#to_s`):
39
+
40
+ ```ruby
41
+ Ansi::Selector.select(objects, ->(object) { "❤❤❤#{object}❤❤❤" })
42
+ ```
39
43
 
40
44
 
41
45
  ## Keyboard
data/lib/ansi/selector.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  module Ansi
2
2
  class Selector
3
3
  # @param [Array<Object>] options
4
+ # @param [Proc] formatter
4
5
  #
5
6
  # @return [Object] option
6
7
  def self.select(options, formatter = default_formatter)
@@ -10,6 +11,7 @@ module Ansi
10
11
  end
11
12
 
12
13
  # @param [Array<Object>] options
14
+ # @param [Proc] formatter
13
15
  #
14
16
  # @return [Array<Object>] option
15
17
  def self.multi_select(options, formatter = default_formatter)
@@ -20,8 +22,9 @@ module Ansi
20
22
 
21
23
  private
22
24
 
25
+ # @return [Proc]
23
26
  def default_formatter
24
- ->(options) { option.name }
27
+ ->(option) { option.name }
25
28
  end
26
29
  end
27
30
  end
@@ -1,5 +1,5 @@
1
1
  module Ansi
2
2
  class Selector
3
- VERSION = "0.2.3"
3
+ VERSION = "0.2.4"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ansi-select
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.3
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Volodymyr Shatskyi