Class: Trailblazer::Operation::Contract::Validate::Extract

Inherits:
Object
  • Object
show all
Defined in:
lib/trailblazer/operation/validate.rb

Overview

Task: extract the contract’s input from params by reading ‘:key`.

Instance Method Summary collapse

Constructor Details

#initialize(key: nil, params_path: nil) ⇒ Extract

Returns a new instance of Extract.



32
33
34
# File 'lib/trailblazer/operation/validate.rb', line 32

def initialize(key: nil, params_path: nil)
  @key, @params_path = key, params_path
end

Instance Method Details

#call(ctx, params:) ⇒ Object



36
37
38
# File 'lib/trailblazer/operation/validate.rb', line 36

def call(ctx, params:, **)
  ctx[@params_path] = @key ? params[@key] : params
end