module FreckleIO::Validator::Tag
Public Class Methods
validation(params, valid_keys)
click to toggle source
rubocop:disable Metrics/MethodLength, rubocop:disable Metrics/AbcSize,
# File lib/freckle_io/validator/tag.rb, line 6 def self.validation(params, valid_keys) Dry::Validation.Schema do configure do config.messages_file = File.join( __dir__, "validation.yml" ) config.namespace = :tag predicates(RestrictedHash) option :allowed_keys end restricted_hash?(allowed_keys) do optional(:name).filled :str? optional(:billable).filled :bool? optional(:per_page).filled :int? end end.with(allowed_keys: valid_keys).call(params) end