class Trailblazer::Macro::Contract::Validate::Extract

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

Public Class Methods

new(key: nil, params_path: nil) click to toggle source
# File lib/trailblazer/macro/contract/validate.rb, line 35
def initialize(key: nil, params_path: nil)
  @key, @params_path = key, params_path
end

Public Instance Methods

call(ctx, params: {}, **) click to toggle source
# File lib/trailblazer/macro/contract/validate.rb, line 39
def call(ctx, params: {}, **)
  ctx[@params_path] = @key ? params[@key] : params
end