Sha256: f183f6686b778f2972db6014df2116bbc1c8331084f1d6d2c9a910ee7b54ce2c

Contents?: true

Size: 699 Bytes

Versions: 2

Compression:

Stored size: 699 Bytes

Contents

module JumpBack
  
  class OptionsParser
    
    attr_reader :path, :redirect_options, :jump_back_options
    
    def initialize(options)
      @path = parse(options)[:path]
      @redirect_options = parse(options)[:redirect_options]
      @jump_back_options = parse(options)[:jump_back_options]
    end
    
    def parse(options)
      return @options if @options
      
      if options[:path].is_a? Hash
        options[:options] = options[:path]
        options[:path] = options[:default]
      end
      
      options[:jump_back_options] = { offsite: options[:options].delete(:offsite) }
      options[:redirect_options] = options.delete(:options)
      @options = options
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
jump_back-0.3.2 lib/jump_back/options_parser.rb
jump_back-0.3.1 lib/jump_back/options_parser.rb