lib/pathway/plugins/dry_validation/v0_11.rb in pathway-0.12.2 vs lib/pathway/plugins/dry_validation/v0_11.rb in pathway-0.12.3

- old
+ new

@@ -4,12 +4,15 @@ module Plugins module DryValidation module V0_11 module ClassMethods attr_reader :form_class, :form_options - attr_accessor :auto_wire_options + attr_accessor :auto_wire + alias_method :auto_wire_options, :auto_wire + alias_method :auto_wire_options=, :auto_wire= + def form(base = nil, **opts, &block) if block_given? base ||= _base_form self.form_class = _block_definition(base, opts, &block) elsif base @@ -30,11 +33,11 @@ end def inherited(subclass) super subclass.form_class = form_class - subclass.auto_wire_options = auto_wire_options + subclass.auto_wire = auto_wire end private def _base_form @@ -56,14 +59,15 @@ module InstanceMethods extend Forwardable delegate %i[build_form form_options auto_wire_options] => 'self.class' - alias :form :build_form + delegate %i[build_form form_options auto_wire_options auto_wire] => 'self.class' + alias_method :form, :build_form def validate(state, with: nil) - if auto_wire_options && form_options.any? + if auto_wire && form_options.any? with ||= form_options.zip(form_options).to_h end opts = Hash(with).map { |opt, key| [opt, state[key]] }.to_h validate_with(state[:input], opts) .then { |params| state.update(params: params) } @@ -74,12 +78,18 @@ val.success? ? wrap(val.output) : error(:validation, details: val.messages) end end - def self.apply(operation, auto_wire_options: false) + def self.apply(operation, auto_wire_options: (auto_wire_options_was_not_used=true; false), auto_wire: auto_wire_options) + #:nocov: + unless auto_wire_options_was_not_used + warn "[DEPRECATION] `auto_wire_options` is deprecated. Please use `auto_wire` instead" + end + #:nocov: + + operation.auto_wire = auto_wire operation.form_class = Dry::Validation::Schema::Form - operation.auto_wire_options = auto_wire_options end end end end end