Sha256: 6b4096fe431e77f77ee5fd4f2ced2a6ced011d1f45ddb7338ef97bfd20fde84f

Contents?: true

Size: 315 Bytes

Versions: 3

Compression:

Stored size: 315 Bytes

Contents

require 'fasten/ui/console'
require 'fasten/ui/curses'

module Fasten
  module UI
    def ui
      @ui ||= STDIN.tty? && STDOUT.tty? ? Fasten::UI::Curses.new(executor: self) : Fasten::UI::Console.new(executor: self)
    end

    def run_ui
      ui.update

      yield
    ensure
      ui.cleanup
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
fasten-0.5.4 lib/fasten/ui.rb
fasten-0.5.2 lib/fasten/ui.rb
fasten-0.5.0 lib/fasten/ui.rb