eac_ruby_utils 0.66.0 → 0.67.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
  SHA256:
3
- metadata.gz: 9d679154119599ad2255adc22653e9fce48d4c517a7894c44b7ab49227a55e50
4
- data.tar.gz: 38a941b85b06be67ae89a459bf3897097d326713b4ea77ec91a6c69bbdad98c1
3
+ metadata.gz: 198a793b8a2d0993f304e80e7463e3350d0944450055e71daaa8494624225264
4
+ data.tar.gz: 0e6f0f4edf00f4435ed0c129c9872aaeeeb66a503acbc5875b31c0fee4ad96e8
5
5
  SHA512:
6
- metadata.gz: d30ef6f35aa136aa0611039f44422f8d54cb484599b5577c6773873b2f35709d879e26e3fd8ae984837cea7b71a74d521720204d9adce4f12d8712a9ebd42241
7
- data.tar.gz: 14fdbded17c439e74aea06d61922318fa1e5221a5587ec995f0c7daefae1dd0d6ca76cd2c7876fbd95b8bcf84c18c397b801d11d44d36e668c42eb0ef60c0e3b
6
+ metadata.gz: 67216e383d422fa5961f470823689d76978b2d21b21dc59338c9849198fbc41e198135ad3526f02ae1e4b30e64b5b72292d2b5a17d22b293ff71a48ecc72f405
7
+ data.tar.gz: b678963a2c8d920b1c391af8f90a4ab2ccdf60a4fded2008b7d1d4dfb3261dccb164427fb0f1f6e706474a365ed4d7ebff661a64dce6b4364b415376d913ed03
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/speaker/sender'
4
+
5
+ class Module
6
+ def enable_speaker
7
+ include ::EacRubyUtils::Speaker::Sender
8
+ end
9
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/contextualizable'
4
+
5
+ module EacRubyUtils
6
+ module Speaker
7
+ include ::EacRubyUtils::Contextualizable
8
+
9
+ class << self
10
+ # @return [EacRubyUtils::Speaker::Receiver]
11
+ def current_receiver
12
+ context.current
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'eac_ruby_utils/abstract_methods'
4
+
5
+ module EacRubyUtils
6
+ module Speaker
7
+ module Receiver
8
+ extend ::EacRubyUtils::AbstractMethods
9
+
10
+ def error(_string)
11
+ raise_abstract_method(__FILE__)
12
+ end
13
+
14
+ def fatal_error(string)
15
+ error(string)
16
+ ::Kernel.exit 1 # rubocop:disable Rails/Exit
17
+ end
18
+
19
+ # @see EacRubyUtils::Speaker::Sender.input
20
+ def input(_question, _options = {})
21
+ raise_abstract_method(__FILE__)
22
+ end
23
+
24
+ def info(_string)
25
+ raise_abstract_method(__FILE__)
26
+ end
27
+
28
+ def infom(_string)
29
+ raise_abstract_method(__FILE__)
30
+ end
31
+
32
+ def infov(*_args)
33
+ raise_abstract_method(__FILE__)
34
+ end
35
+
36
+ def out(_string = '')
37
+ raise_abstract_method(__FILE__)
38
+ end
39
+
40
+ def puts(_string = '')
41
+ raise_abstract_method(__FILE__)
42
+ end
43
+
44
+ def success(_string)
45
+ raise_abstract_method(__FILE__)
46
+ end
47
+
48
+ def title(_string)
49
+ raise_abstract_method(__FILE__)
50
+ end
51
+
52
+ def warn(_string)
53
+ raise_abstract_method(__FILE__)
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module EacRubyUtils
4
+ module Speaker
5
+ module Sender
6
+ delegate :error, :fatal_error, :info, :infom, :title, :success, :warn, to: :speaker_receiver
7
+
8
+ def infov(*args)
9
+ speaker_receiver.infov(*args)
10
+ end
11
+
12
+ delegate :out, to: :speaker_receiver
13
+
14
+ delegate :puts, to: :speaker_receiver
15
+
16
+ # Shortcut to [EacRubyUtils::Speaker.current_receiver].
17
+ #
18
+ # @return [EacRubyUtils::Speaker::Receiver]
19
+ def speaker_receiver
20
+ ::EacRubyUtils::Speaker.current_receiver
21
+ end
22
+
23
+ # Options:
24
+ # +bool+ ([Boolean], default: +false+): requires a answer "yes" or "no".
25
+ # +list+ ([Hash] or [Array], default: +nil+): requires a answer from a list.
26
+ # +noecho+ ([Boolean], default: +false+): does not output answer.
27
+ def input(question, options = {})
28
+ speaker_receiver.input(question, options)
29
+ end
30
+ end
31
+ end
32
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EacRubyUtils
4
- VERSION = '0.66.0'
4
+ VERSION = '0.67.0'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eac_ruby_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.66.0
4
+ version: 0.67.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esquilo Azul Company
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-02 00:00:00.000000000 Z
11
+ date: 2021-06-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -176,6 +176,7 @@ files:
176
176
  - lib/eac_ruby_utils/patches/module/patch.rb
177
177
  - lib/eac_ruby_utils/patches/module/require_sub.rb
178
178
  - lib/eac_ruby_utils/patches/module/simple_cache.rb
179
+ - lib/eac_ruby_utils/patches/module/speaker.rb
179
180
  - lib/eac_ruby_utils/patches/object.rb
180
181
  - lib/eac_ruby_utils/patches/object/asserts.rb
181
182
  - lib/eac_ruby_utils/patches/object/debug.rb
@@ -203,6 +204,9 @@ files:
203
204
  - lib/eac_ruby_utils/settings_provider.rb
204
205
  - lib/eac_ruby_utils/settings_provider/setting_value.rb
205
206
  - lib/eac_ruby_utils/simple_cache.rb
207
+ - lib/eac_ruby_utils/speaker.rb
208
+ - lib/eac_ruby_utils/speaker/receiver.rb
209
+ - lib/eac_ruby_utils/speaker/sender.rb
206
210
  - lib/eac_ruby_utils/struct.rb
207
211
  - lib/eac_ruby_utils/version.rb
208
212
  - lib/eac_ruby_utils/yaml.rb