Sha256: b6d5276fe242ef0a04ba5217b5477cb501af9a3a712f5d1898f15c9d7e94e3f1

Contents?: true

Size: 616 Bytes

Versions: 138

Compression:

Stored size: 616 Bytes

Contents

module CLI
  module UI
    module Prompt
      # A class that handles the various options of an InteractivePrompt and their callbacks
      class OptionsHandler
        def initialize
          @options = {}
        end

        def options
          @options.keys
        end

        def option(option, &handler)
          @options[option] = handler
        end

        def call(options)
          case options
          when Array
            options.map { |option| @options[option].call(options) }
          else
            @options[options].call(options)
          end
        end
      end
    end
  end
end

Version data entries

138 entries across 138 versions & 3 rubygems

Version Path
shopify-cli-2.2.1 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-2.2.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-2.1.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-2.0.2 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-2.0.1 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-2.0.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.14.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.13.1 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.13.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.12.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
rfix-3.0.1 vendor/cli-ui/lib/cli/ui/prompt/options_handler.rb
rfix-3.0.0 vendor/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.11.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.10.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.9.1 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.9.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
cli-ui-1.5.1 lib/cli/ui/prompt/options_handler.rb
cli-ui-1.5.0 lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.8.0 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb
shopify-cli-1.7.1 vendor/deps/cli-ui/lib/cli/ui/prompt/options_handler.rb