Sha256: 0ad31c7a65cfa98c0f37fd29aa40f74346ea58112de4ab7629bd5b8449253bef

Contents?: true

Size: 430 Bytes

Versions: 1

Compression:

Stored size: 430 Bytes

Contents

require "tokenie/version"
require 'securerandom'

module Tokenie
  # Generates a friendly string randomically
  def self.friendly(options = {})
    length = options[:length] || 6
    raise ArgumentError, "'length' must be in range (2..16)" if length < 2 || length > 16

    loop do
      token = SecureRandom.base64(15).tr('+/=lIO0o', 'abcdefgh')[0, length]
      break token unless block_given? && yield(token)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
tokenie-0.0.1 lib/tokenie.rb