Sha256: 8ebe2d5e736a2f08589186692fb9d04773c00fd769784e97f18ef5a423eef060
Contents?: true
Size: 624 Bytes
Versions: 5
Compression:
Stored size: 624 Bytes
Contents
# frozen_string_literal: true module Might # Validates filters and raises error if one of them is invalid # class FilterParametersValidator # @param app [#call] def initialize(app) @app = app end # @param env [<{:filter => <Might::FilterParameter>, Array>}] # @return [<{:filter => <Might::FilterParameter>, Array>}] # def call(env) params, errors = env invalid_filters = Array(params[:filter]).select(&:invalid?) messages = invalid_filters.flat_map(&:errors) app.call([params, errors.concat(messages)]) end private attr_reader :app end end
Version data entries
5 entries across 5 versions & 1 rubygems