Class: PKCE::Encoder

Inherits:
Object
  • Object
show all
Defined in:
lib/pkce/encoder.rb

Overview

Encodes Proof Key for Code Exchange (PKCE) codes for authorization.

Instance Method Summary collapse

Constructor Details

#initialize(code: Code, verifier: Verifier.new, challenger: Challenger.new) ⇒ Encoder

Returns a new instance of Encoder.



6
7
8
9
10
# File 'lib/pkce/encoder.rb', line 6

def initialize code: Code, verifier: Verifier.new, challenger: Challenger.new
  @code = code
  @verifier = verifier
  @challenger = challenger
end

Instance Method Details

#call(length: Verifier::MAX) ⇒ Object



12
13
14
# File 'lib/pkce/encoder.rb', line 12

def call length: Verifier::MAX
  verifier.call(length:).fmap { |value| code[challenge: challenger.call(value), verify: value] }
end