Sha256: dbc49814694d6f27dd6be78a58efd242f41978590d0e973fe0810ee4ddb9201c

Contents?: true

Size: 432 Bytes

Versions: 1

Compression:

Stored size: 432 Bytes

Contents

# frozen_string_literal: true

require 'securerandom'

module Lite
  module Uxid
    class Nanoid < Lite::Uxid::Base

      class << self

        def encode
          klass = new
          klass.nanoid_encode
        end

      end

      def nanoid_encode
        encoding_length.times.with_object('') do |_i, str|
          str + encoding_chars[(SecureRandom.rand * encoding_base).floor]
        end
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
lite-uxid-1.0.2 lib/lite/uxid/nanoid.rb