Class: EncodedId::Encoders::HashidConfiguration

Inherits:
BaseConfiguration show all
Defined in:
lib/encoded_id/encoders/hashid_configuration.rb

Overview

Configuration for Hashids encoder Hashids requires a salt for encoding/decoding

Instance Attribute Summary collapse

Attributes inherited from BaseConfiguration

#alphabet, #blocklist, #blocklist_max_length, #blocklist_mode, #hex_digit_encoding_group_size, #max_inputs_per_id, #max_length, #min_length, #split_at, #split_with

Instance Method Summary collapse

Constructor Details

#initialize(salt:, **options) ⇒ HashidConfiguration

Returns a new instance of HashidConfiguration.



13
14
15
16
# File 'lib/encoded_id/encoders/hashid_configuration.rb', line 13

def initialize(salt:, **options)
  @salt = validate_salt(salt)
  super(**options)
end

Instance Attribute Details

#saltObject (readonly)

: String



10
11
12
# File 'lib/encoded_id/encoders/hashid_configuration.rb', line 10

def salt
  @salt
end

Instance Method Details

#create_encoderObject

Create the Hashid encoder instance



20
21
22
# File 'lib/encoded_id/encoders/hashid_configuration.rb', line 20

def create_encoder
  Hashid.new(salt, min_length, alphabet, blocklist, blocklist_mode, blocklist_max_length)
end