Module: Space::Core::CLI::Helpers
- Included in:
- BaseCommand
- Defined in:
- lib/space_core/cli/helpers.rb
Instance Method Summary collapse
- #display_date(space) ⇒ Object
- #handle_errors ⇒ Object
- #project_config ⇒ Object
- #render(result) ⇒ Object
- #setup_terminal(color: "auto", colors: nil) ⇒ Object
- #state ⇒ Object
- #store ⇒ Object
- #terminal ⇒ Object
Instance Method Details
#display_date(space) ⇒ Object
33 34 35 36 37 38 |
# File 'lib/space_core/cli/helpers.rb', line 33 def display_date(space) id_date = space.id.match(/\A(\d{4})(\d{2})(\d{2})/) return "#{id_date[1]}-#{id_date[2]}-#{id_date[3]}" if id_date space.data["created_at"].to_s[0, 10] end |
#handle_errors ⇒ Object
40 41 42 43 44 45 46 47 48 49 |
# File 'lib/space_core/cli/helpers.rb', line 40 def handle_errors yield rescue Space::Core::Error => e if terminal terminal.error(e.) else err.puts e. end CLI.record_outcome(Outcome.new(exit_code: 1, message: e.)) end |
#project_config ⇒ Object
8 9 10 |
# File 'lib/space_core/cli/helpers.rb', line 8 def project_config @project_config ||= Space::Core::Config.load end |
#render(result) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/space_core/cli/helpers.rb', line 51 def render(result) case result when Dry::Monads::Result::Success yield result.value! if block_given? when Dry::Monads::Result::Failure error = result.failure = error.respond_to?(:message) ? error. : error.to_s terminal ? terminal.error() : err.puts() CLI.record_outcome(Outcome.new(exit_code: 1, message: )) end end |
#setup_terminal(color: "auto", colors: nil) ⇒ Object
24 25 26 27 28 29 30 31 |
# File 'lib/space_core/cli/helpers.rb', line 24 def setup_terminal(color: "auto", colors: nil) @terminal = Space::Core::Terminal.new( config: project_config, stdout: out, stderr: err, color_mode: colors || color || "auto" ) end |
#state ⇒ Object
12 13 14 |
# File 'lib/space_core/cli/helpers.rb', line 12 def state @state ||= Space::Core::State.load end |
#store ⇒ Object
16 17 18 |
# File 'lib/space_core/cli/helpers.rb', line 16 def store @store ||= Space::Core::SpaceStore.new(config: project_config, state: state) end |
#terminal ⇒ Object
20 21 22 |
# File 'lib/space_core/cli/helpers.rb', line 20 def terminal @terminal end |